このコードを使用して、テーブルビュー セルを新しいビューに移動させています。
[self performSegueWithIdentifier:@"hello" sender:self];
しかし、ビルドして実行し、セルをクリックすると、まったく異なる/無関係なビューが表示されます。何か案は?
このコードを使用して、テーブルビュー セルを新しいビューに移動させています。
[self performSegueWithIdentifier:@"hello" sender:self];
しかし、ビルドして実行し、セルをクリックすると、まったく異なる/無関係なビューが表示されます。何か案は?
TableViewControllerで次のコードを試してください
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"yourSegueIdentifierName"]) {
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
NSManagedObject *object = [[self fetchedResultsController] objectAtIndexPath:indexPath];
[[segue destinationViewController] setDetailItem:object];
}
}
これにより、セグエがリッスンされ、セグエの識別子と選択した行が確認されます。次に、選択した行のオブジェクトを使用してセグエを実行します。また、必要に応じて1つのビューに複数のセグエを簡単に含めることができます。さまざまなセグエ識別子に「if」関数を追加するだけです。
TableViewControllerでセグエを1つだけ使用する場合、実際には識別子は必要ありませんが、後の段階でコードに他のセグエを追加する場合に備えて、とにかくそれを使用することをお勧めします。
ストーリーボードでセグエの識別子を確認してください。
また、複数のセグエがある場合は、正しいセグエが正しいボタンと正しいビューに接続されていることを確認してください。