多くの依存関係を含む大きなアプリを入手しました。このケースRootTableViewController
では、テーブル ビュー コントローラーが必要になるたびに実行する必要があるすべてのものを処理するために呼び出されるクラスを実装しました。
今、無限ループを発見しましたが、それを修正する方法がわかりません。で次のコードを取得しましたRootTableViewController
。
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
NSString *sectionTitle = [self tableView:tableView titleForHeaderInSection:section];
int numbersOfRowInSection = [self.tableView numberOfRowsInSection:section];
if (numbersOfRowInSection > 0)
{
// ...
}
else
{
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 28.0f)];
return view;
}
}
[tableView numberOfRowsInSection]
これは iOS 5 と iOS 6 では完全に機能しますが、iOS4 ではが を呼び出しているため、無限ループが発生します[tableView viewForHeaderInSection]
。テーブル ビュー API を使用してこれを修正するにはどうすればよいですか? さまざまなデータソースで[ count]
これを拡張する多くのテーブルビューコントローラーを取得したため、内部データ配列を操作するのは解決策ではありません。RootTableViewController