的選擇方法來訪問的TableView我希望有人在那裏可以幫助我理解我要去哪裏錯在這裏如何從工具欄
我有一個TableViewController,爲了節省的tableview的內容,我「VE改變了 - (無效)viewDidLoad中的代碼添加一個保存按鈕...
- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemSave
target:self
action:@selector(insertCustomData)
];
但是,我insertCustomData
函數中,我需要訪問的tableview,我會在控制器代碼中的其他地方。我需要訪問我的tableview才能在保存到數據庫之前驗證單元格值。我可以看到如何從工具欄定義中傳遞對tableview的引用(如果這是應該如何完成的)
我甚至不確定我是否應該在此階段訪問tableview單元格的值(I我試圖構建一個NSObject的單元格數據傳遞給我寫的數據控制器中的驗證函數,以驗證並保存到SQLite數據庫中)
對不起,如果這看起來微不足道,但現在我'米停留在這一點,任何幫助,將不勝感激
感謝
[更新]
我正在使用tableView作爲數據輸入屏幕,所以最初沒有要顯示的數據。 tableView在tableview控制器的範圍內,但由於我需要這樣做,我在運行時使用自定義單元格定義(在.xib文件中,使用相關的.h和.m文件)創建單元格, 。自定義單元定義只是一個UILabel和一個UITextField(用於數據輸入)
這些字段包含佔位符,用於指示需要輸入的內容,但其他位置爲空。我仔細考慮過是否仍然需要將tableView放在數組或字典對象上以捕獲用戶輸入
我寫這個的類定義了@interface ViewController : UIViewController<UITableViewDelegate, UITableViewDataSource>
,因爲這是從UITableViewController初始模板創建的它叫)
我感覺我應該更早捕獲數據,只調用選擇器的保存方法?
我只需要創建一個帶有nil NSStrings的NSArray,並將它分配給tableView中的每個UITextField/Cell?如果我這樣做,文本輸入是否會進入這個NSArray?
[解決 - 以下答案]
我需要的是修改標準.h文件中這一
@interface CustomViewController : UITableViewController <UITextFieldDelegate> {
IBOutlet UITableView *MyTableView;
}
@property(nonatomic, retain) IBOutlet UITableView *MyTableView;
然後在界面生成器,我能夠CTRL-鏈接的實現代碼如下,以我的新聲明。這是最重要的一步,因爲這樣則可以確保,而不是一個通用的tableView,我能夠修改動態地構建所述細胞引用此主代碼,如下
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"EditableCustomCell";
EditableCustomCell *cell = [[self MyTableView] dequeueReusableCellWithIdentifier:CellIdentifier];
我還添加了synthesize MyTableView
在頂部
這使得MyTableView
任何新的方法,我需要寫訪問的,使得從leftBarButtonItem選擇insertCustomData
微風訪問它
非常感謝Kimpoy本作中的幫助!
(注:諷刺的是完成此,看前一個問題我張貼後,我應該從我以前的問題與塞格斯和tableviews How to reference tableView from a view controller during a segue學會)
jeeeezzz ...感謝特別提到,男人!沒想到。我只是想幫忙。嘿嘿...它使我的一天! – Kimpoy