2012-05-10 46 views
0

我已經爲了costumize導航欄後退按鈕背景圖片來實現這個代碼的appDelegate:問題與後退按鈕的背景圖片

float version = [[[UIDevice currentDevice] systemVersion] floatValue]; 
    if (version >= 5.0) 
    { 
     // iPhone 5.0 code here 
     UIImage *buttonImage = [[UIImage imageNamed:@"btn_backesp.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(1, 10, 1, 10)]; 
     [[UIBarButtonItem appearance] setBackButtonBackgroundImage:buttonImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; 

    } 

    return YES; 

,但我得到這個錯誤,似乎兩個按鈕重疊時,用默認的一個定製。我試圖隱藏左欄按鈕項目,然後都隱藏起來。

enter image description here

非常感謝

回答

4

使用下面的代碼來設置後退按鈕的形象,它的工作原理完美

UIButton *backBtn  = [UIButton buttonWithType:UIButtonTypeCustom]; 
UIImage *backBtnImage = [UIImage imageNamed:@"btn_backesp.png"] ; 
[backBtn setBackgroundImage:backBtnImage forState:UIControlStateNormal]; 
[backBtn addTarget:self action:@selector(goback) forControlEvents:UIControlEventTouchUpInside]; 
backBtn.frame = CGRectMake(0, 0, 54, 30); 
UIBarButtonItem *cancelButton = [[UIBarButtonItem alloc] initWithCustomView:backBtn] ; 
self.navigationItem.leftBarButtonItem = cancelButton; 

GoBack方法: -

- (void)goback 
{ 
    [self.navigationController popViewControllerAnimated:YES]; 
} 
+0

數以百萬計的感謝,這問題就像一場噩夢! – theomen

+0

有一個問題,你有選擇器調用的goback方法嗎?非常感謝 – theomen

+0

請參閱編輯goback方法 –