ストーリーボード内でテーブルビューコントローラーを使用しています。
現在、ストーリーボードのナビゲーション コントローラーに埋め込まれたテーブルビュー コントローラーが 1 つあります。このテーブル ビュー コントローラーは、ObjectiveC ファイルにリンクされています。
コードを介して、tableView didSelectRowAtIndexPath メソッドを使用して、正しいデータを含む別のテーブル ビュー コントローラーを表示できます。
コード:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
WorkoutType *workoutType = (WorkoutType *)[self.fetchedResultsController objectAtIndexPath:indexPath];
WorkoutSetViewController *detailViewController = [[WorkoutSetViewController alloc] initWithWorkoutType:workoutType];
[self.navigationController pushViewController:detailViewController animated:YES];
}
しかし、ストーリーボードに別のテーブル ビュー コントローラーを追加しようとすると、それを ObjectiveC ビュー コントローラー ファイルに関連付け、最初の TVC をそれに接続します。そのテーブル ビュー コントローラーは、コードの実行時に表示されません。
2番目のテーブルビューを視覚的にカスタマイズする必要があり、次のようにセグエプッシュを使用しようとしました:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"show"]) {
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
WorkoutType *workoutType = (WorkoutType *)[self.fetchedResultsController objectAtIndexPath:indexPath];
//WorkoutSetViewController *detailViewController = [[WorkoutSetViewController alloc] initWithWorkoutType:workoutType];
WorkoutSetViewController *destViewController = segue.destinationViewController;
destViewController.workoutType = workoutType;
//[self.navigationController pushViewController:detailViewController animated:YES];
}
}
しかし、このコードを実行すると、アプリケーションはクラッシュしませんが、2 番目のテーブル ビュー コントローラーは読み込まれません。
私が間違っていることは何でも単純でなければなりません。
ありがとうございました