1

Parse を使用してログインすると、タスクのリストを表示する PFQueryTableViewController と、タスクの詳細を編集してセグバックできる別の詳細ビュー コントローラーが表示されます。現在の問題は、スタックからタスク詳細ビューを編集してポップした後、PFQueryTableViewController が新しい変更を反映していないことです。ただし、ログイン画面 (PFQueryTableViewController の前のビュー) に戻り、テーブル ビューを再度入力すると、テーブル ビュー リストが更新されます。私は次のことを試しました:

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [self.tableView reloadData];
}

そしてまた

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [self loadObjects];
    [self.tableView reloadData];
}

しかし、それらは効果を発揮していないようです。私の推測では、ビューがポップオフされてテーブルビューが表示された後にデータが更新されます。私が調査している間、誰かがこれについて何か洞察を持っているかどうか疑問に思っています。ありがとう!

4

4 に答える 4

1

viewDidAppear で queryForTable メソッドを再クエリしてみることができます (ただし、これは当然、ビューの外観ごとに API リクエストを使用します)。

- (void)viewDidAppear:(BOOL)animated {
 [self queryForTable];
}
于 2015-02-10T17:12:11.633 に答える
0

を使用[self loadObjects]して、 内のすべてのオブジェクトの更新をトリガーできますPFQueryTableViewController

于 2015-11-05T07:56:51.140 に答える
0

ビューコントローラーをポップする前に、データが保存されていることを確認する必要があります。

完了ハンドラで Parse の save メソッドを使用します。

[request saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
  if (succeeded) {
    [self.navigationController popViewControllerAnimated:YES];
  }
}];
于 2015-02-16T07:44:43.177 に答える