2014-05-04 103 views
0

iOS編程和Objective-C的新手,我被困在我猜測的東西很簡單。這裏是我的問題:從視圖控制器的命令更新表視圖

我有一個簡單的單視圖應用程序,有兩個文本字段,一個按鈕和一個表視圖。我的想法是,我想從兩個文本字段中獲取文本,並使用此文本填充tableview中的下一個可用單元格。除了如何根據命令更新表視圖的內容外,我已經整理了一切。理想情況下,我想在按下按鈕時更新表格視圖。

我有一個視圖控制器,它充當數據源和表視圖的委託。

我知道[tableView reloadData]方法,但它需要範圍內適當的tableView變量。這樣做可以說像tableView:didSelectRowAtIndexPath這樣的委託方法,並且在選擇任何單元格後我已經更新它,但是如果我想在執行與表視圖無關的操作時更新表視圖,例如按鈕被按下?這個方法的範圍中沒有任何tableView變量可以從(或者是)調用reloadData?

所以我想我的問題是:有沒有辦法從視圖控制器的其餘部分訪問表視圖變量的目的是調用reloadData或有沒有一種方法,我不知道這會促進這一點?

感謝您的幫助!

回答

0

爲什麼你在視圖控制器中爲你的表視圖創建一個插座? 您的視圖控制器將委託和數據源表視圖(你應該在界面生成器或代碼設置:

self.tableView.delegate = self; 

self.tableView.dataSoure = self; 

我假設self.tableView - 就是我提到的出口在歐有。一個出口,你可以輕鬆地按下按鈕後更新表視圖:比如你添加新的值到用於填充表視圖,並呼籲

[self.tableView reloadData]; 

如果您不想重裝就可以使用方法中的所有表的數組insertRowsAtIndexPaths:withRowAnimation:

其實你要讀下一手冊以及: https://developer.apple.com/library/ios/documentation/uikit/reference/UITableView_Class/Reference/Reference.html https://developer.apple.com/library/ios/documentation/userexperience/conceptual/tableview_iphone/AboutTableViewsiPhone/AboutTableViewsiPhone.html

這種引用是非常有用的。

+0

太棒了!已經使用了很多按鈕和字段的商店,但無論出於什麼原因,它都沒有想到,這也適用於桌面視圖。乾杯! – user3602209

相關問題