我在我的 AppDelegate 应用程序 didFinishLaunchingWithOptions 中添加了以下代码,以引用我在情节提要中创建的 UITabBarController(如选项卡式应用程序模板)。然后我想要 self.currentController 代表当前选项卡(ViewController)。我可以使它成为这样的选项卡之一,并在日志中为 self.currentController 获取 ViewController 的名称:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UITabBarController *tabController = (UITabBarController *)self.window.rootViewController;
self.currentController = [[tabController viewControllers] objectAtIndex:0];
}
但是如何使它代表当前显示的选项卡?
我试过了:
self.currentController = tabController.selectedViewController
我收到警告:从 UIViewController 分配给 UIViewController<BannerViewContainer> 的指针不兼容。如果我现在 NSLog self.currentController 它说(空)。
我还尝试了UITabBarController 类参考中的不同代码组合,但我无法使其工作。什么是正确的代码?