1

これが尋ねられたことは知っていますが、すべての解決策を試してみましたが役に立ちませんでした。

私のアプリケーションのタブの 1 つはログです

選択すると、ログのリストを含むログ ビュー コントローラーが表示されます。

新しいログを追加するために、上部のメニュー バーに「+」があります

それを選択すると、ログ ビュー コントローラーの追加をスタックにプッシュします。

新しいログを追加し、[戻る] ボタンをクリックします

テーブルに戻ってもリストが更新されない

最初のView Controllerに戻ったときにテーブルのデータをリロードしたかったのですが、テーブルに戻ったときにviewDidLoad、viewDidAppear、またはviewWillAppearのいずれも起動されませんでした

最初の画面は忘れているので

戻るボタンを押したときに発生するアクションを見つけるために、これらを 2 番目の画面に追加しました。

-(void)viewWillDisappear{
 NSLog(@" whered it go");
}

-(void)viewDidDisAppear
{
NSLog(@" disapeeeeeearing");
}

- (void)backAction {
NSLog(@" WHAT ABOTU THIS       ");
[self.navigationController popViewControllerAnimated:YES];
}

- (void)navigationController:(UINavigationController *)navigationController      willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
[viewController viewWillAppear:animated];
NSLog(@"is ANY of this Happening");
}

追加画面が消えると、これらのどれも発生しません NSLog が出力されません

私が読んだところによると、最初の画面で応答がないのは、ログ テーブルがスタックから実際に離れたことがないためです。

これは、別のタブ (アプリの別の部分) でこれを行ったときに発生しませんでした

このタブの違いは、追加ログ ビュー コントローラーに 5 つのサブビューがあり、モーダルを呼び出すことができることです (ただし、それらを呼び出さなくても失敗します)。それと関係があると思います。

ログから追加ログへの呼び出し

AddViewController *controller =[[AddViewController alloc]  initWithNibName:@"AddViewController" bundle:nil];
controller.passString= newText;
[self.navigationController pushViewController:controller animated:YES];

画面上部の戻るボタンをクリックするだけで戻るためのコードはありません。

誤字脱字ごめんなさい

4

1 に答える 1