UItableViewCell アクセサリ ボタンに問題があります。私のアクセサリ ボタンは、別の UIViewController へのセグエで「接続」されています。アクセサリ ボタンをタップすると、モデルからオブジェクトが取得され、このオブジェクトがセグエの destinationViewController に「渡されます」。これは、セグエメソッドの準備です。
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"IdentityCard"])
{
NSLog(@"%i" ,self.tableView.indexPathForSelectedRow.row);
[segue.destinationViewController showIdentityCardForTeacher:[self.teachers getTeacherInPosition:self.tableView.indexPathForSelectedRow.row]];
}
}
問題は、メソッドの先頭 (「if」の後) の NSLog が常に数値 0 を表示することです! メソッドを実装しようとしました:
-(void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath
しかし、このメソッドの前に segue メソッドの準備が実行されるため、indexPath を「保存」するための @property を設定できません。どうすればこの問題を解決できますか?