在我的应用程序中,我有一个TabBarController
(其ViewControllers
为tabBarItems
为ViewController
)来自另一个HomeViewController
(被叫HomeViewController
)。 tabBarItem
有三个按钮,按下后会显示tabBarController中的相应控制器。
第二个ViewDidLoad
中的Controller处理一些信息并将该信息发送到第一个tabBarItem中的控制器,该tabBarItem更新其表并显示已处理的数据。但是,问题是第一个控制器的viewDidLoad
方法。
在它的HomeViewController
方法中,我最初隐藏了表格,因此如果用户点击HomeViewController
上的第一个按钮,则表格对他来说是不可见的。如果用户点击viewController
上的第一个按钮(以显示第一个视图控制器),则按计划进行操作
问题是:如果用户首先从HomeViewController
转到第二个viewDidLoad
,则会调用ViewController
方法(这不是问题)。但是,当用户从第二个viewDidLoad
转到第一个Viewcontroller时,会调用第一个Viewcontroller
的{{1}}方法,并隐藏我的表格。!!需要实际显示。
我知道我的问题很难理解,但有人可以帮忙吗?
这是我的第一个ViewController
的代码:
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"View Did Load of CCVC");
//self.navigationItem.titleView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"top_bar.png"]];
[self.customercareSearchbar setBackgroundImage:[UIImage imageNamed:@"dark_grey_search_back.png"]];
[self.view addSubview:self.customercareSearchbar];
[self.view addSubview:self.customerCareTableView];
self.customercareSearchbar.delegate = self;
self.customerCareTableView.delegate = self;
//[self.customerCareTableView setBackgroundColor:[UIColor lightGrayColor]];
[self.customerCareTableView setAutoresizingMask:(UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight)];
////HERE LIES THE Main PROBLEM
[self.customerCareTableView setHidden:YES];
[self.customercareSearchbar becomeFirstResponder];
}
是否可以移动
[self.customerCareTableView setHidden:YES];
[self.customercareSearchbar becomeFirstResponder];
在任何其他方法?我知道它在init
中不起作用,因为在调用init
后加载了视图。
答案 0 :(得分:0)
您可以根据从第一个ViewController的ViewWillAppear
中的第二个ViewController接收的值添加一些逻辑,以便将您的customerCareTableView隐藏属性设置为NO。