0

以下に示すようなアプリ構造がありUITableViewsます。このプロジェクトは、2 つのエンティティと約 12 の属性を持つ Core Data アプリです。

サブディテールには、いくつかありUIPickersます。ピッカー項目が選択されると、変更がコア データ モデルとルート VC に反映されます。変更は、サブ詳細ビュー自体にも詳細ビューにも反映されません。

各 VC をプッシュおよびポップし、各 VC 間でエンティティ値を渡します。私はAからB、C、そして戻ってきます。

リクエストがあれば、コード スニペットで質問を更新します。

ありがとう

ここに画像の説明を入力

私はここで 2 日間何が起こっているのか把握しようとしてきましたが、助けを求める時が来たと思います。

4

1 に答える 1

1

何が起こっているかについて考えられる説明

あなたのコードを見なければ推測することしかできませんが、これが起こっていると思います。rootViewController は、coreData モデルへの変更を適切にリッスンしています。を直接リッスンしているNSManagedObjectContextObjectsDidChangeNotificationか、実装していNSFetchedResultsControllerDelegateます。viewWillAppearまたは、rootViewController でフェッチを適切に実行している可能性が高いです。ただし、Detail または Sub-Detail viewController でこれらのことを行っていない可能性があります。

具体的な提案

  1. Detail および Sub-Detail viewWillAppear で and を呼び出して、coreData からデータを更新しperformFetchます。[tableView reloadData]
  2. NSFetchedResultsControllerDelegatecoreData モデルへの変更が自動的に UITableView に反映されるように実装することをお勧めします。
于 2013-02-18T19:08:12.090 に答える