如何點擊一個按鈕跳轉到tabbar控制器的一個界面上

如圖片所示


我需要點擊個人中心然后跳轉到“我的”tabbar里面,肯定不是用push,因為那樣不符合需求。所以應該用另外一種方式

在首頁這個界面獲取到你的tabbar控制器,然后讓tabbar的selectedIndex等于你要跳轉的那個tabbar就行了

MHIXTabBarController *tabbar = (MHIXTabBarController *)[UIApplication sharedApplication].keyWindow.rootViewController;

tabbar.selectedIndex = 3;

這里有個小問題,我是通過把tabbar設置為根控制器,然后獲取到的,如果你的根控制器不是tabbar,那你必須要在完成一系列操作之后把tabbar控制器換成根控制器,

比如在這里我就是在登錄完成之后設置的

MHIXTabBarController *tabbarVC = [[MHIXTabBarController alloc] init];

app_Delegate.window.rootViewController = tabbarVC;

這里的app_Delegate是個宏,別誤導大家了

#define app_Delegate ((AppDelegate *)[UIApplication sharedApplication].delegate)

這里還有個問題? 你在登錄完成之后立馬把控制器換成tabbarController 是沒有動畫的,會卡頓一下,所以我還是投機取消的先presentViewController過去再換的,頂多再設置一下一秒延遲。。。至于我這種方法可不可取 ,那就仁者見仁智者見智了。

MHIXTabBarController *tabbarVC = [[MHIXTabBarController alloc] init];

[self presentViewController:tabbarVC animated:YES completion:nil];

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{

app_Delegate.window.rootViewController = tabbarVC;

});

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容