【问题标题】:Two UITabBarControllers and Autorotation两个 UITabBarControllers 和 Autorotation
【发布时间】:2010-04-17 03:07:51
【问题描述】:

我的 mainwnidow.nib 中有两个 UITabBarControllers 连接到我的 appdelegate。

在我的应用委托中,我可以加载任何一个:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    

//either
     [window addSubview:tabBarController.view];
//or
     [window addSubview:tabBar2Controller.view];
[window makeKeyAndVisible];
}

并且自动旋转有效。

如果我同时添加两者(希望稍后在它们之间进行交换):

 [window addSubview:tabBarController.view];
 [window addSubview:tabBar2Controller.view];

然后自动旋转停止工作......一切都是纵向的。

提前感谢您的任何提示...

【问题讨论】:

  • 如果您转到应用程序屏幕(点击主电源查看按钮,将其最小化到后台)并重新打开它(将其带到前台),它可以完美运行!这肯定是一个错误。

标签: iphone objective-c cocoa-touch uikit


【解决方案1】:

嗯,我不喜欢这种设计。通常窗口应该只有一个子视图。

添加另一个包含 tabBarControllers 实例的视图控制器,然后从那里进行切换。这将解决您的问题。

【讨论】:

  • 我在页面中添加了一个视图控制器。我尝试将标签栏控制器添加到该视图控制器。它不会让我。另外,我必须在该页面中有两个标签栏控制器才能在它们之间切换。
【解决方案2】:

经过深思熟虑后,我意识到我可以直接切换 tabBarController.viewcontrollers 数组。

在 IB 中,我将两组选项卡添加到单个选项卡栏,然后 appdelegate 将它们分成两个数组并根据需要在它们之间交换。

效果很好,但 UI 是否有效尚无定论

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-27
    • 1970-01-01
    • 2013-12-26
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    • 2015-12-20
    相关资源
    最近更新 更多