4 つのビューがあります。
ビュー 1 は、追加ボタンのあるテーブル ビューを示しています。(追加ボタンは表示されません。スクリーン ショットの境界の上にあります)
ビュー 2 (追加ボタンを押すと表示される) では、ユーザーは追加したいテーブル ビュー セルに関するデータを入力できます。save
ボタンが押されると、新しいセルがビューに追加されます。
ビュー 3 ユーザーがセルを編集したい場合は、セルをタップするだけです。このビューでは、ユーザーは既にテーブルにあるセルを編集することができます。
しかし、ビュー 1 (テーブル ビュー) とビュー 3 (セル エディター ビュー) の間にビュー 4 を配置すると、属性/ラベルnull
は、ユーザー入力が表示されるはずの場所を示します。しかし、ビュー 1 とビュー 3 の間からビュー 4 を削除すると、アプリは再び完璧に動作します。理由はありますか?
私は単に次の方法でビューを切り替えています:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Storyboard" bundle:nil];
View3 * three = (View3 *) [storyboard instantiateViewControllerWithIdentifier:@"view3VC"];
View4 * four = (View4 *) [storyboard instantiateViewControllerWithIdentifier:@"view4VC"];
[tableView deselectRowAtIndexPath:indexPath animated:YES];
three.managedObjectContext = self.context;
MyEntityClass *entity = [self.tableArray objectAtIndex:indexPath.row];
three.3entity = entity;
[self presentViewController:four animated:YES completion:nil];
}