我已經編程了幾種其他語言,但這基本上是我的第一個iOS應用程序,我努力正確實現UITableView。 閱讀文檔後,完成此操作最常用的方法是創建一個UITableViewController的子類。我已經完成了這一步,並且已經實現了所有數據源協議方法以及代理協議中的行選擇方法,併爲其提供了三個屬性。如何從超視圖中刪除TableView時通知我?
第一種是行中的tableview數, 第二個是項目的陣列被顯示爲在表格視圖標籤, 終於有從保持標籤的文本的屬性選定的行。 一旦選擇了該行,我就設置了該標籤的屬性,然後從[self.view removeFromSuperView]
中刪除表格。
以上不是我的應用程序中唯一的視圖。該應用程序是來自學校的顏色選擇器任務,因此主視圖包含操縱顯示顏色的所有控件。
子類化UITableViewController後我做了什麼,在我的主視圖控制器中創建了這個子類的一個實例,並將其作爲一個屬性。因此,在主視圖上是一個召回按鈕,允許用戶從以前保存的顏色列表中進行選擇。當單擊該按鈕是這個IBAction爲方法稱爲
-(IBAction)swithToSavedColorsView:(id)sender {
self.savedColorTable.numberOfRows = self.dictionaryOfSavedColors.count;
NSLog(@"Count in switch view is %d", self.dictionaryOfSavedColors.count);
[ self.view addSubview:self.savedColorTable.view ];
}
這提供了可用保存的顏色列表,我行選擇響應與
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:
(NSIndexPath *)indexPath {
self.textFromColorSelection = [ [ NSString alloc ] init ];
UITableViewCell *cell = [ tableView cellForRowAtIndexPath:indexPath ];
self.textFromColorSelection = cell.textLabel.text;
NSLog(@"The value of selection is %@ ", self.textFromColorSelection);
[ self.view removeFromSuperview ]; // Go back to main screen.
}
當我寫這段代碼的時候,我得到了一個伊利的感覺,我從一開始就以完全錯誤的方式去創建UITableView。請讓我知道,如果我做了錯誤的事情,只要我在這些對象之間建立了溝通。
我實際上試圖解決的問題是在我打電話給 [ self.view removeFromSuperView ]
之後的上述方法中,我的其他視圖如何知道這種情況何時發生?當UITableView關閉時我想要做的是讓我的其他視圖從我創建的實例中獲取標籤屬性,並使用該標籤從數據庫中檢索信息。
感謝您的幫助,非常感謝。
對不起,我花了幾個回到你身邊,但這個解決方案完美地工作。感謝您的幫助,非常感謝。 –