我正在研究iOS應用程序。基本上,我的應用程序的一部分有一個大的滾動視圖,其他6個滾動視圖添加爲子視圖(使用方法[scrollView addSubview:object.view]),以便它在6個不同的滾動視圖之間切換。每個滾動視圖都有一些我需要保存內容的文本視圖。 在每個子滾動視圖中,我向鍵盤添加了一個inputAccessoryView來添加一個Done按鈕,並且當按下此按鈕時我想調用一個方法來保存數據,然後刪除鍵盤(後者我已經完成了,我只需要弄清楚保存部分)。 我覺得在我的'超級'滾動視圖中有一個方法可以更容易地保存所有的數據,所以我可以在每個子滾動視圖中添加幾行代碼(順便說一句,這些子滾動視圖不是' t從主scrollview分類,它們是UIViewController的子類,所以我不能只使用super),因爲我必須將其複製/粘貼到6個不同的文件中。我可以通過在'sub'滾動視圖中導入並創建一個新對象來訪問'超級'類(具有其他所有其他類的大滾動視圖),但我覺得這不是我應該做的。這導致我進入我的下一個問題。 如果以這種方式訪問更大的滾動視圖,試圖訪問UITextViews的text屬性將返回null,而從子滾動視圖的類中訪問相同的屬性將顯示文本。訪問將scrollview作爲子視圖和其他一些問題添加的類
請讓我知道我是否做了一件完全錯誤的事情,因爲我覺得有6種不同的滾動效果真的是效率低下(但在兩個iPod touch,第二代和第四代測試它,沒有太多滯後在所有所以也不能太低效,否則它會養豬的內存,使其滯後,右)
感謝, 李
編輯:? 我仍然有這個麻煩。我創建的按鈕是以編程方式創建的,所以我無法將其鏈接到Interface Builder中的第一響應者。有沒有辦法以編程方式做到這一點?這是我創建inputAccessoryView的代碼:
-(void)createInputAccessoryView{
inputAccView = [[UIView alloc]initWithFrame:CGRectMake(10.0, 0.0, [[UIScreen mainScreen] bounds].size.width, 40.0)];
UIToolbar *toolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0.0, 0.0, 320.0, 40.0)];
UIBarButtonItem *doneBttn = [[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(endEdit:)];
[toolbar setItems:[NSArray arrayWithObject:doneBttn]];
[inputAccView addSubview:toolbar];
[toolbar release];
[doneBttn release];
}
該按鈕指向一個將關閉鍵盤的方法(在同一個類中)。但是,在關閉鍵盤之前,我需要調用另一種方法來保存數據(這是在不同的類中)。這是否有助於任何人的理解?
我會建議您減少這個問題的大小,並嘗試將其分解成多個問題和/或重新組織它。沒有人希望篩選出一段文字,並試圖想象你在做什麼。 – david 2012-01-10 02:11:29