カスタムの背面イメージと右バー ボタン項目を使用してナビゲーション バーを設定する親ビュー コントローラーがあります。何らかの理由で、2 つの異なるコントローラーによって押された 1 つの個別の画面に、押すまで戻るボタンの画像が表示されません。それからそれは永久にそこにあります。誰でもこれに出くわしますか?これは、ビューで呼び出されたボタンコードがロードされたものです。
// In my app delegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Setup custom back button
UIImage *backButton = [UIImage imageNamed:@"backButton"];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:[backButton resizableImageWithCapInsets:UIEdgeInsetsMake(0, backButton.size.width, 0, 0)]
forState:UIControlStateNormal
barMetrics:UIBarMetricsDefault];
}
// In the parent view controller that all of the others inherit from
- (void)viewDidLoad
{
[super viewDidLoad];
// Custom Back Button
UIBarButtonItem *backButton = [[UIBarButtonItem alloc]
initWithTitle: @" "
style: UIBarButtonItemStyleBordered
target: nil action: nil];
[self.navigationItem setBackBarButtonItem: backButton];
}
これは、どの VC からプッシュされたかに関係なく、1 つを除くすべての画面で正常に機能します。ただし、ボタンを押すまで画像が隠されています。