项目中的事情: 一个故事板,其中只包含一个标签栏控制器和四个视图控制器(所以我有四个标签栏项目和四个segues,非常非常简单) 标签栏控制器使用的自定义Obj-Class,并在“self.view”上绘制一个按钮
问题是什么: 想要模拟“按标签栏项目”但不是它不起作用。请帮忙。 (我没有任何其他自定义对象类,但是UITabBarController唯一的一个) 我尝试了什么:
[(UITabBarController*)self.navigationController.topViewController setSelectedIndex:3];
[self.tabBarController setSelectedIndex:3];
[self.tabBarController setSelectedController
[self.tabBarController setSelectedViewController:[self.tabBarController.viewControllers objectAtIndex:3]];
custom-obj-class.m:
- (IBAction)buttonPressed:(UIButton *)sender
{
if (self.tabBarController) {
NSLog(@"I have a tab bar");
[self.tabBarController setSelectedIndex:1];
} else {
NSLog(@"I don't have"); // I GOT THIS ONE
}
return;
}
- (void)viewDidLoad
{
[super viewDidLoad];
...
UIBarButtonItem *realRoomItem = [[UIBarButtonItem alloc] initWithImage:realRoomImage style:UIBarButtonItemStylePlain target:self action:@selector(buttonPressed:)];
...
}
答案 0 :(得分:1)
对不起,这是一个很大的错误。它应该是“self”而不是“self.tabBarController”,因为我的custom-obj-class是UITabBarController的类,并且也在其中使用。