2010-04-17 92 views
0

在我們的應用程序中,我使用導航欄上的左右按鈕。 我想要一個圖像在後面(左)按鈕。如果我使用的段,然後 必要定義後退按鈕的動作。 請給我任何方法。導航欄上的圖像後退按鈕

+3

您已經提問了23個問題,而且未將答案標記爲「已接受」(答案旁邊的綠色複選標記)。這樣做會鼓勵更多的人回答你的問題。這是一種表達感謝的方式,並感謝那些幫助過你的人。 – 2010-04-17 15:47:22

+0

感謝那 – 2010-04-19 04:23:28

+0

大聲笑,但...仍然沒有在這篇文章中接受的答案。 – n00shie 2012-11-15 01:36:56

回答

0

是的,如果您使用Bar Button項目,您可以轉到Interface Builder中的Bar Button Item屬性,並且應該有一個Image選項可以選擇。

0

您可以通過繼承UINavigationBar的做,然後創建一個方法是這樣的:

+ (UIBarButtonItem *)barButtonWithImage:(NSString *)imageName target:(id)target action:(SEL)action { 
    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [button addTarget:target action:action forControlEvents:UIControlEventTouchUpInside]; 
    UIImage *titleImage = [UIImage imageNamed:imageName]; 
    [button setImage:titleImage forState:UIControlStateNormal]; 
    [button sizeToFit]; 
    UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:button]; 
    return item; 
} 

然後將其添加到您的導航條是這樣的:

[self.navigationItem setLeftBarButtonItem:[TFNavigationBar barButtonWithImage:@"rp_settings.png" target:self action:@selector(showSettings)]]; 

PS:我更喜歡使用單身,這就是它的原因。

0

我們發現用我們自己的替換後退按鈕的最簡單方法就是這樣。

  1. 在視圖外的nib文件中添加一個後退按鈕。根據需要定製它。
  2. 將它作爲IBOutlet連接。我們稱之爲btnBack。
  3. 在viewDidLoad中
  4. 做到這一點:

    UIBarButtonItem *back = [[UIBarButtonItem alloc] initWithCustomView:btnBack]; 
    [self.navigationItem setLeftBarButtonItem:back animated:YES]; 
    
  5. 連接動作到您的backBtn這樣的:

    - (IBAction)Back:(id)sender { 
    [self.navigationController popViewControllerAnimated:YES]; 
    } 
    

和多數民衆贊成它,你擁有屬於自己的定製後退按鈕:)

0

如果你想簡單地用你的應用程序中的圖像替換你的後退按鈕..

[[UINavigationBar appearance] setBackIndicatorImage:[UIImage imageNamed:@"back_button"]]; 
[[UINavigationBar appearance] setBackIndicatorTransitionMaskImage:[UIImage imageNamed:@"back_button"]]; 

或者對於特定的導航欄,請指定navBar而不是'[UINavigationBar appearance]'。這工作完美。