私には がありUITableViewController
、それUITableView
は 3 つのセクションで静的です。私は静的セクションを次のviewWillAppear
ように設定しようとしています:
-(void) viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[[[self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]] detailTextLabel] setText:@"Stuff"];
[[[self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:1]] detailTextLabel] setText:@"Other stuff"];
...
}
最初の行はセクション 0 の行 0 にデータを入力しますが、2 行目 (実際には、最初のセクション以外の任意のセクションへの cellForRowAtIndexPath 呼び出し) は nil セルを返します。
問題を絞り込むためにいくつかのテストを行いました。
[self.tableView numberOfSections] // returns 3 - which is correct
[self.tableView numberOfRowsInSection:1] // return 4 - which is unique and correct for my second section
したがって、テーブルビューには正しいセクションがありますが、次のようになります。
[self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:1] // nil
私は非常に混乱しています - 誰がそれを引き起こしているのか分かりませんか?
コードには特別なことは何もありません。ストーリーボードに作成された単純な静的テーブルで、3 つのセクションすべてが最初から設定されています。ビュー コントローラーは正しくサブクラス化された UITableViewController です。セクション 0 を完全に設定でき、すべてが期待どおりに機能します。
助けてくれてありがとう。