iOS7 UITabBarController 在以编程方式更改 selectedViewController 或 selectedIndex 后没有响应

Posted

技术标签:

【中文标题】iOS7 UITabBarController 在以编程方式更改 selectedViewController 或 selectedIndex 后没有响应【英文标题】:iOS7 UITabBarController not responding after programmatically changing selectedViewController or selectedIndex 【发布时间】:2013-10-09 11:27:45 【问题描述】:

如上所述,我遇到了关于 UITabBarController 的问题,或者特别是在手动/以编程方式设置 selectedViewController 或 selectedIndex 后标签栏没有响应。当我在移动到另一个选项卡屏幕之前弹出先前选择的选项卡的视图控制器时,也会发生这种情况。是的,我相信我已经多次检查了 UITabBarController 的委托,是的,我已经确认

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController

没有被解雇。有没有人经历过?

【问题讨论】:

你有想过这个吗? 【参考方案1】:

确保设置代理权限,否则代理方法不会被触发。

【讨论】:

是的,就像我上面说的那样设置正确。【参考方案2】:

似乎资产的加载行为在 ios7 中可能发生了变化

确保视图已完全加载。

在 iOS7 之前,您将创建选项卡式视图,将其推送,然后选择选项卡。

在ios7中,视图不是同步加载的。因此,当您创建并显示它时,选择索引在实际显示之前被调用,因此没有任何效果。

当我们开始过渡到 iOS7 时,至少这让我很不爽

【讨论】:

以上是关于iOS7 UITabBarController 在以编程方式更改 selectedViewController 或 selectedIndex 后没有响应的主要内容,如果未能解决你的问题,请参考以下文章

iOS 7 - 呈现模式视图控制器选择 UITabBarController 中的第一个选项卡

iOS 7 - UITabBarController selectedIndex 崩溃

IOS7定位问题

继承 UITabBarController 和 UINavigationController

在 iOS 7 Storyboard 中用 UITabBarController 替换 UIViewController

UINavigationController 中的 UITabBarController 适用于 iOS 8 但不适用于 7