基本的に、これに関するすべてのスタック オーバーフローの質問に目を通しましたが、答えが見つかりません。答えはどれもうまくいかないようです。
サブビューとして uitableview を使用して、テーブルビューを含むアプリケーションを作成しています。uitableview は、uitableviewcontroller のサブクラスである xvalues というクラスに接続されたデータソースおよびデリゲートです。カスタムの uitableviewcell をロードするクラスもあります。これはすべてエラーを引き起こしません。
xvalues の uitableview のコードは次のとおりです。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
// Return the number of sections.
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
// Return the number of rows in the section.
return 1;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
tableviewcell *cell = [[tableviewcell alloc]initWithFrame:CGRectZero];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// Navigation logic may go here. Create and push another view controller.
/*
<#DetailViewController#> *detailViewController = [[<#DetailViewController#> alloc] initWithNibName:@"<#Nib name#>" bundle:nil];
// ...
// Pass the selected object to the new view controller.
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViewController release];
*/
}
インデックス パスで行を編集したり、編集スタイルをコミットしたりできるなど、いくつかのコメント アウトされたメソッドを削除しました。
cellforrowatindexpath では、tableviewcell がカスタム セル クラスです。
これから、コードを実行すると、カスタム セルを含む 1 つのセルを含む uitableview が読み込まれます。ただし、クリックしてドラッグすると、約1インチのドラッグで機能し、突然エラーでクラッシュします。
2012-07-16 12:14:16.957 spreadsheet[68717:f803] -[__NSCFString tableView:cellForRowAtIndexPath:]: unrecognized selector sent to instance 0x6894400
2012-07-16 12:14:16.960 spreadsheet[68717:f803] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString tableView:cellForRowAtIndexPath:]: unrecognized selector sent to instance 0x6894400'
*** First throw call stack: blah blah blah
行をクリックしたときにも発生しますが、インデックスパスメソッドで行を選択したためだと思います。
誰かが私を助けることができれば、それは驚くほど役に立ちます。