Ios5 在iOS 5中取消选择或取消选择tabbar中的所有选项卡

Ios5 在iOS 5中取消选择或取消选择tabbar中的所有选项卡,ios5,uitabbarcontroller,uitabbar,uitabbaritem,unselect,Ios5,Uitabbarcontroller,Uitabbar,Uitabbaritem,Unselect,我是iOS开发新手,我直接从iOS 5开始。我已经创建了一个故事板,它由一个tabview控制器作为其rootviewcontroller组成。我给它加了两个标签 我想先取消选择/取消选择所有选项卡。我该怎么做?我试过以下方法 UIView *view = [[UIView alloc]initWithNibName:@"view" bundle:[NSBundle mainBundle]]; [self.tabBarController setSelectedViewControll

我是iOS开发新手,我直接从iOS 5开始。我已经创建了一个故事板,它由一个tabview控制器作为其rootviewcontroller组成。我给它加了两个标签

我想先取消选择/取消选择所有选项卡。我该怎么做?我试过以下方法

 UIView *view = [[UIView alloc]initWithNibName:@"view" bundle:[NSBundle mainBundle]];
    [self.tabBarController setSelectedViewController:nil];
    [self.tabBarController setSelectedViewController:view];
[self.tabBarController.tabBar setSelectedItem:nil];
其中我添加了一个标识符为“view”的视图

但这不起作用,它会产生错误:

 unrecognized selector sent to instance
我还尝试了以下方法

 UIView *view = [[UIView alloc]initWithNibName:@"view" bundle:[NSBundle mainBundle]];
    [self.tabBarController setSelectedViewController:nil];
    [self.tabBarController setSelectedViewController:view];
[self.tabBarController.tabBar setSelectedItem:nil];
但是它说

“NSInternalInconsistencyException”,原因:“不允许直接修改由选项卡栏控制器管理的选项卡栏。”


我已经在控制器的第一个选项卡中尝试了这段代码。我之所以要这样做,是因为我想在第一个选项卡视图的顶部放置一个默认视图,并在单击下面的任何选项卡后将其隐藏。

我使用此选项来清除所有选定的选项卡项

[myTabBar setSelectedItem:nil];

老问题。就记录而言,如果选项卡栏由TabBarController管理,则不能取消选择所有选项卡。方法:

[self.tabBar setSelectedItem:nil]


如果选项卡栏不是由选项卡栏控制器管理的,则只能工作。如果是,则无法取消选择所有选项卡,必须始终选择一个选项卡。

我找到了一个解决方案,该解决方案可能不是最好的解决方法,但它对我有效([self.tabBar setSelectedItem:nil];没有)。我将我的选项卡视图放在父视图(myTabBarViewContainer)中,然后当我想取消选择我的项目时,我在父视图上调用removeFromSuperview并重新初始化它:

[self.myTabBarViewContainer.view removeFromSuperview];
然后重新初始化,瞧


不是很漂亮,但很管用…

这是一个小骗局。但我只是简单地将“着色颜色”设置为-VIEW将在我希望它看起来像没有选择时显示为灰色,然后在我希望显示选择时将“着色颜色”设置回“选定”颜色

// since we cant turn off tabbar selection, change the color to make
// it look like nothing was selected.
self.tabBarController.tabBar.tintColor = [UIColor grayColor];  
-----------
// make sure tintcolor is turned on (just in case another module turned it off
self.tabBarController.tabBar.tintColor = self.view.tintColor;

你应该使用uitabar。不是阿巴斯控制器

取消选择或取消选择选项卡栏项目swift 3.0

tabbar_Main.selectedItem = nil

有没有办法把它设置成动画?