5

次のコードを使用して、アプリケーション全体でナビゲーション バーの戻るボタンをカスタマイズします。

UIImage *backButton = [[UIImage imageNamed:@"backButton"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
UIImage *backButtonOn = [[UIImage imageNamed:@"backButton_on"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:backButton
                                                  forState:UIControlStateNormal
                                                barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:backButtonOn
                                                  forState:UIControlStateHighlighted
                                                barMetrics:UIBarMetricsDefault];

UIImagePickerController を提示して写真ライブラリにアルバムを入力する場合を除いて、それはうまく機能しています。戻るボタンはカスタマイズされた戻るボタンでもあります。画像ピッカーで元の戻るボタンを取り戻すにはどうすればよいですか?

4

3 に答える 3

9
 [[UIBarButtonItem appearanceWhenContainedIn:[UIImagePickerController class], nil] setBackButtonBackgroundImage:[UIImage imageNamed:@"blank-button"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

これが正しい方法です

于 2013-07-26T07:34:04.667 に答える
4

これを使用してみてください:

    [[UINavigationBar appearanceWhenContainedIn:[YourClassThatsNotAUIImagePicker class], nil] setBackButtonBackgroundImage:someOtherImage forBarMetrics:UIBarMetricsDefault];

これにより、外観設定をリストしたクラスのみに制限し、UIImagePickerController をそのままにしておく必要があります。

于 2012-11-15T20:21:39.147 に答える
0

1.swift と ios9 の場合 (上記の回答は次のようになります) --

    UIBarButtonItem.appearanceWhenContainedInInstancesOfClasses([UIImagePickerController.self]).setBackButtonBackgroundImage(UIImage(named: "blank-button"), forState: UIControlState.Normal, barMetrics: UIBarMetrics.Default)

2. UINavigationBar の backIndicatorImage を変更したい場合

UINavigationBar.appearanceWhenContainedInInstancesOfClasses([UIImagePickerController.self]).backIndicatorImage = UIImage(named: "backButton")//or nil

3. backIndicatorTransitionMaskImage を変更したい場合

UINavigationBar.appearanceWhenContainedInInstancesOfClasses([UIImagePickerController.self]).backIndicatorTransitionMaskImage =UIImage(named: "backButton")// nil
于 2016-03-17T11:18:00.607 に答える