![](/img/trans.png)
[英]iPhone Dev, UINavigationController, How to Programmatically Tell when Back Button is Pressed
[英]How to tell when back button is pressed in a UINavigationControllerStack
是否可以檢查何時在UINavigationController堆棧中按下后退按鈕? 我已經嘗試將一個動作和目標添加到self.navigationItem.backBarButtonItem無濟於事。
有人有任何解決方案?
你可以嘗試我的方式:
在ViewController中寫入:
UIBarButtonItem *backBt = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"imageNameOfBackButton"] style:UIBarButtonItemStyleBordered target:self action:@selector(backBt_touch:)];
self.navigationItem.leftBarButtonItem = backBt;
和行動方法:
- (void)backBt_touch:(id)sender {
[self.navigationController popViewControllerAnimated:YES];
}
你必須拍一張你想要的后退按鈕的照片。
彈出viewController時隱藏按鈕的動畫與iOS的動畫不同!
P / S: 我從模擬器中得到它。 希望它有用! :)
實現此目的的一種方法是覆蓋按下后退按鈕時可見的UIViewController中的viewWillDisappear
:
- (void)viewWillDisappear:(BOOL)animated {
if (self.isMovingFromParentViewController) {
// handle back button press
}
}
顯然這並沒有直接攔截后退按鈕本身的按鍵,但它讓你有機會在那時執行邏輯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.