【问题标题】:iOS - Tab bar UIViewiOS - 标签栏 UIView
【发布时间】:2014-02-13 05:32:13
【问题描述】:

我正在开发一个带有标签栏的应用,它有三个不同的标签。在第二个选项卡上,当每个选项卡失去焦点时,即当用户转到另一个选项卡时,我想隐藏一些控件(文本字段和标签)。
有没有特定的方法可以做到这一点。
顺便说一句,我知道隐藏控件的代码。

[anylbl setHidden:YES];

我只是想知道视图失去焦点的方法。

【问题讨论】:

  • 通过标签栏委托方法,例如 - shouldSelectViewController 或 didSelectViewController
  • 使用 self.tabBarController.selectedIndex=1;失去对其他标签的关注。我不知道这对你有没有帮助..
  • @Vidhyanand:这会有所帮助。谢谢!
  • @Nayan:正如 Balram Tiwari 在回答中说明的那样。这也是一种方法。

标签: ios iphone objective-c


【解决方案1】:

关闭视图时触发事件可以使用:

-(void) viewWillDisappear:(BOOL)animated 
{
    [super viewWillDisappear:animated];
    _yourLabel.hidden = YES;
    _yourImageView.hidden = YES;
}

你也可以使用:

-(void) viewDidDisappear:(BOOL)animated 
{
    [super viewDidDisappear:animated];
    _yourLabel.hidden = YES;
    _yourImageView.hidden = YES;
}

【讨论】:

  • 我正要这样做。 Bt 它给了我短时间的错误。 (:
【解决方案2】:

如果你想回复UITabBarControllerDelegate,那么你有这些方法。

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController NS_AVAILABLE_IOS(3_0);

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController;

通过这种方式,您可以在控制器级别而不是 viewAppearance 级别进行控制。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-08
    • 1970-01-01
    • 2018-02-24
    相关资源
    最近更新 更多