我在没有编码的情况下在IB中构建了100%的app。我的编码背景很少,所以请回答一下。 :)
我需要一种方法来设置一个按钮(在我的标签栏控制器之外)将我带到我的标签栏控制器中的特定标签。当我在IB中执行模态链接时,它会将我带到那里,但底部的标签栏控制器已经消失。
我该怎么做? (非常感谢具体的例子)
以下答案:
我自己想出来......对于那些可能正在寻找类似解决方案的人......
我所做的只是在我的初始视图控制器中创建一个名为globalVariable的全局变量。
//myview.h
#ifndef Globals_h
#define Globals_h
extern NSInteger globalVariable;
#endif
使用模式推送到我的标签栏控制器的四个按钮填充该视图。每个按钮都有一个动作,可以改变globalVariable的值。
//myview.m
- (IBAction)button1Action:(id)sender {
globalVariable = 0;
}
- (IBAction)button2Action:(id)sender {
globalVariable = 1;
}
//etc etc
然后在标签栏控制器中,只需将selectedIndex设置为viewDidLoad中的globalVariable
//tabbarcontroller.m
- (void)viewDidLoad
{
[super viewDidLoad];
self.selectedIndex = globalVariable;
}
答案 0 :(得分:1)
我自己想出来......对于那些可能正在寻找类似解决方案的人......
我所做的只是在我的初始视图控制器中创建一个名为globalVariable的全局变量。
//myview.h
#ifndef Globals_h
#define Globals_h
extern NSInteger globalVariable;
#endif
使用模式推送到我的标签栏控制器的四个按钮填充该视图。每个按钮都有一个动作,可以改变globalVariable的值。
//myview.m
- (IBAction)button1Action:(id)sender {
globalVariable = 0;
}
- (IBAction)button2Action:(id)sender {
globalVariable = 1;
}
//etc etc
然后在标签栏控制器中,只需将selectedIndex设置为viewDidLoad中的globalVariable
//tabbarcontroller.m
- (void)viewDidLoad
{
[super viewDidLoad];
self.selectedIndex = globalVariable;
}
答案 1 :(得分:0)
让IB为您的按钮设置补足动作
在该方法中,您希望访问作为当前控制器的父级的tabbar控制器
UITabBarController tbc = (UITabBarController) [self parentviewcontroller];
tbc.selectedIndex = 2; //or whatever the index you need