簡體   English   中英

無法自定義pushViewController的后退按鈕

[英]Can't customize pushViewController's back button

我有一個ViewController,它打開了另一個ViewController

[self.navigationController pushViewController:detailViewController animated:YES];

現在新的VC在navBar中有一個后退按鈕,但是我無法設法為它提供與第一個ViewController中的navBar按鈕相同的背景圖像。 我嘗試過:

UIImage *buttonImage = [UIImage imageNamed: @"Button.png"];
[self.navigationItem.backBarButtonItem setBackButtonBackgroundImage:buttonImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[self.navigationItem.backBarButtonItem setTitle:@"doesnt work either"];

但它不起作用。 我究竟做錯了什么? 謝謝!

嘗試下面的代碼片段,它對我來說很好:

UIBarButtonItem *barBtnItem = [[UIBarButtonItem alloc]initWithTitle:@"Back" style:UIBarButtonItemStyleBordered target:self action:@selector(pop)];

self.navigationItem.backBarButtonItem = barBtnItem;

或者你也可以這樣做:

   UIButton *backButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 26, 26)];
   [backButton setImage:[UIImage imageNamed:@"back"] forState:UIControlStateNormal];
   [backButton setShowsTouchWhenHighlighted:TRUE];
   [backButton addTarget:self action:@selector(popViewControllerWithAnimation) forControlEvents:UIControlEventTouchDown];
   UIBarButtonItem *barBackItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];
   self.navigationItem.hidesBackButton = TRUE;
   self.navigationItem.leftBarButtonItem = barBackItem;

享受編碼:)

嘗試這個:

        UIButton *button =  [UIButton buttonWithType:UIButtonTypeCustom];
        [button setImage:[UIImage imageNamed:@"Button.png"] forState:UIControlStateNormal];
        [button addTarget:self action:@selector(pushNav:) forControlEvents:UIControlEventTouchUpInside];
        [button setFrame:CGRectMake(0, 0, 32, 32)];
         self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:button];

      -(void)pushNav {
           [self.navigationController popViewControllerAnimated:YES];  
      }

暫無
暫無

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

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