2

4番目のViewControllerでわかるように、「戻る」がありますUIBarButtonItem

[戻る] ボタンは IBAction に接続されています。

- (IBAction)backClicked:(UIBarButtonItem *)sender
{
    [self.navigationController popViewControllerAnimated:YES];
}

しかしpopViewControllerAnimated:、4 番目の ViewController から 3 番目の ViewController に戻るために呼び出すと、Tab Bar Tab のUINavigationBartintColor の元の色が変更されます。UITabBarController の元の navbar tintColor は AppDelegate によって緑に設定され pop によって濃い灰色 (4 番目の VC の navbar の色) に変更されます。

呼び出し時にナビゲーションバーの色合いを失わないようにするにはどうすればよいですpopViewControllerAnimated:か?? 助けてください、私は何日もこれを理解しようとしてきました。

4

2 に答える 2

0

交換

[self.navigationController popViewControllerAnimated:YES];

以下で(これは迅速なコードです)

self.dismissViewControllerAnimated(true, completion: nil)

4 番目のビュー コントローラーを追加するときに、ナビゲーション コントローラーを使用しませんでした。そのため、dismissViewControllerAnimated メソッドを呼び出すだけです。

pushViewController メソッドを使用してビュー コントローラーを追加する場合にのみ、UINavigationController とその pop メソッドを使用する必要があります。

私はこれを学びました-前のView Controllerに戻るが機能しません

于 2016-05-11T10:33:52.280 に答える