簡體   English   中英

iOS無法正確更改UIBarButtonItem圖像

[英]iOS Can't change UIBarButtonItem image properly

我嘗試更改UINavigationBar的“后退”按鈕自定義圖標時遇到問題。 為了實現這一目標,我使用以下代碼:

- (void)viewDidLoad {
    [super viewDidLoad];
    UIBarButtonItem* leftBtn;
    UIImage* botonVolverImg = [UIImage imageNamed:@"boton_volver.png"]; 

    leftBtn = self.navigationItem.leftBarButtonItem;
    leftBtn.image = botonVolverImg;
}

但是,當視圖出現時,您會看到以下內容:

忙碌的貓http://www.timotteo.com.ar/boton.png

(您可以看到舊按鈕仍顯示在背面,加上我選擇的圖像看起來有些拉長)

我一直在更改imageInsets屬性,但這似乎不起作用。 我也一直在閱讀論壇,但是找不到確切的解決方案。

任何建議都歡迎!

UIBarButtonItemimage屬性與背景圖像不對應,僅與提供附加上下文的圖像對應。 如果您的目標是5.0+,那么最好的選擇是使用-setBackButtonBackgroundImage:forState:barMetrics:設置條形按鈕項目的背景。

為了補充Mark的答案,如果您的客戶要求您支持iOS 4,則可以創建一個外觀完全符合客戶期望的UIButton (即該圖像),然后使用UIBarButtoninitWithCustomView方法創建自己的UIBarButton返回鍵。 然后,您可以讓該按鈕觸發popViewController或您需要的任何適當操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM