簡體   English   中英

如何在ios上實現導航后退按鈕動作?

[英]how to achieve the navigation back button action on ios?

我已經使用導航來構建我的uiviewcontroller(A→B)。

但是我需要更改back方法。

我將隱藏<返回按鈕。

[self.navigationItem setHidesBackButton:YES];

然后,我在底部建立一個新的工具欄,並在工具欄上添加一個Bar Button項(名稱為home)。

我已經設定

 @property (weak, nonatomic) IBOutlet UIBarButtonItem *backHomeBtn;

但是我不知道如何對本地“ <Back”按鈕效果實現相同的操作。

如果我使用觸發的Segue Action推送,

我覺得這是錯誤的方法。 因為我摔倒了,堆棧會推入一個新的viewcontroller。

如何建立相同的動作,例如導航后退按鈕。

非常感謝你。

============================

我找到答案:

如果回到A,我們可以使用

 [self.navigationController popToRootViewController]

如果要直接跳轉到uiviewercontroller。

我們可以用

 [self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:2] animated:YES];

要么

 for (UIViewController *controller in self.navigationController.viewControllers) {
     if ([controller isKindOfClass:[otherUIViewercontrollerClassName  class]]) {
         [self.navigationController popToViewController:controller animated:YES];
     }
 }

若要從B返回A,請創建一個Action事件,然后在B View Controller中編寫此方法,然后將back back按鈕與此事件連接。

 [self dismissViewControllerAnimated:YES completion:nil];

當您像A→B→C一樣,並且想要從C返回A時,可以使用它來到達根控制器。

-(IBAction)unwindToRootController:(UIStoryboardSegue *)segue;

在您的header.h文件中聲明此操作,然后將Button與Exit Responder連接並選擇此事件。

暫無
暫無

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

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