如何在 uitabbarcontroller 中的 uibutton 单击事件上推送其他视图控制器?
Posted
技术标签:
【中文标题】如何在 uitabbarcontroller 中的 uibutton 单击事件上推送其他视图控制器?【英文标题】:How to Push otherviewcontroller on uibutton click event in uitabbarcontroller? 【发布时间】:2017-01-28 10:48:16 【问题描述】:这是我的UITabBarController
代码
在appdelegate.m
文件中
UITabBarController *tbController =(UITabBarController *)self.window.rootViewController;
UITabBar *tbAppearence = [UITabBar appearance];
现在,我在UITabBarController
视图之一中有三个button
,当我单击button
之一时,屏幕将重定向到其他视图,但不能。
这是我的按钮操作代码 在 UserInfoViewController.m 文件中
- (IBAction)AskQuestionButtonPressed:(id)sender
NSLog(@"Ask Button pressed");
AskQuestion *AskQuestionObject = [self.storyboard instantiateViewControllerWithIdentifier:@"AskQuestionID"];
[self.navigationController pushViewController:AskQuestionObject animated:YES];
请帮助我,我是 ios 新手。
【问题讨论】:
检查UIVC
标识符。
同样的“AskQuestionID”,但什么也没发生。
然后添加您的标签条码。我的意思是当你在标签栏中添加 Vc 时。
无法理解你。请具体说明,因为我是 ios 开发领域的新手。
检查这个样本并检查你的样本是否符合这个,因为这是工作代码。它对你有很大帮助。 sample
【参考方案1】:
你必须像下面的代码一样在你的标签栏中添加你的UIViewcontroller
。
这是我的UITabBarController
子类的示例:
- (void)viewDidLoad
[super viewDidLoad];
UIViewController *view1 = [[UIViewController alloc] init];
UIViewController *view2 = [[UIViewController alloc] init];
UIViewController *view3 = [[UIViewController alloc] init];
NSMutableArray *tabViewControllers = [[NSMutableArray alloc] init];
[tabViewControllers addObject:view1];
[tabViewControllers addObject:view2];
[tabViewControllers addObject:view3];
[self setViewControllers:tabViewControllers];
//can't set this until after its added to the tab bar
view1.tabBarItem =
[[UITabBarItem alloc] initWithTitle:@"view1"
image:[UIImage imageNamed:@"view1"]
tag:1];
view2.tabBarItem =
[[UITabBarItem alloc] initWithTitle:@"view2"
image:[UIImage imageNamed:@"view3"]
tag:2];
view3.tabBarItem =
[[UITabBarItem alloc] initWithTitle:@"view3"
image:[UIImage imageNamed:@"view3"]
tag:3];
【讨论】:
UIViewController *view1 = [[AskQuestion alloc] init]; NSMutableArray *tabViewControllers = [[NSMutableArray alloc] init]; [tabViewControllers addObject:view1]; [自我 setViewControllers:tabViewControllers]; view1.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"view1" image:[UIImage imageNamed:@"view1"] tag:1]; [self setViewControllers:tabViewControllers] 中的此错误; 'UserInfoViewController' 没有可见的@interface 声明选择器'setViewControllers:'以上是关于如何在 uitabbarcontroller 中的 uibutton 单击事件上推送其他视图控制器?的主要内容,如果未能解决你的问题,请参考以下文章
如何呈现嵌入在 UITabBarController 和 UINavigationBarController 中的 ViewController
如何以编程方式切换到 UITabBarController 中的另一个选项卡?
UITabBarController 问题中的 UINavigationController
如何更新 UITabbarController 中的默认徽章 UI 外观?