我已經創建了一個UITabController,裏面有一個UITabbar。點擊UITabbarItem後打開UIViewController
我沒有使用的UITabBarController,因爲我想在屏幕的頂部UITabbar。
單擊tab1時,我想呈現controller1並單擊tab2我想呈現控制器2.我不希望tabbar隱藏。我想在tabbar下面顯示控制器。
@interface MTLeaderFactoViewController() <UITabBarDelegate>
@property (weak, nonatomic) IBOutlet UITabBar *tabBar;
@end
@implementation MTLeaderFactoViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
}
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
}
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item {
if (item.tag == 0) {
NSLog(@"item tag 0");
} else {
NSLog(@"item tag 1");
}
}
@end
我的問題:
1)didSelectItem即使使用UITabbarDelegate
2)什麼是一個按鈕,點擊後顯示控制器的最優雅的方式後方法不會被觸發?我不想使用segue,因爲所有的控制器都在不同的故事板中。 現在,我打算做
Controller1 *fp = [Controller1 controllerStoryboard:STORYBOARD_COURSE];
[self addChildViewController:fp];
[self.view addSubview:fp.view];
[fp didMoveToParentViewController:self];
編輯1:
Controller1 *fp = [Controller1 controllerStoryboard:STORYBOARD_COURSE];
[self addChildViewController:fp];
[self.view addSubview:fp.view];
[fp didMoveToParentViewController:self];
試過,但它隱藏標籤欄。我想利用標籤欄下方的空間來顯示控制器
你是否將'UITabbarDelegate'設置爲'MTLeaderFactoViewController'?只是實現委託方法不會調用委託方法。 – Priyal
將TabBar委託連接到xib/StoryBoard中的ViewController –
哦,上帝,我的壞。感謝您指出了這一點。 –