Ios 在现有导航控制器中添加选项卡栏控制器,并传递现有运行对象经过深思熟虑的屏幕
我搜索了很多论坛,但没有找到任何合适的解决方案。 我有一个工作项目,它是使用Ios 在现有导航控制器中添加选项卡栏控制器,并传递现有运行对象经过深思熟虑的屏幕,ios,objective-c,iphone,ipad,segue,Ios,Objective C,Iphone,Ipad,Segue,我搜索了很多论坛,但没有找到任何合适的解决方案。 我有一个工作项目,它是使用UINavigationController构建的。现在我想用UITabBarController打破它的某些部分。问题是我有一个活动对象,它在prepareForSegue方法的帮助下在整个屏幕上传递。 如何集成新的uitabar并在任何屏幕中传递此活动对象 如果你看到图片,红色部分对我来说很好。我在table view控制器中有对象列表,当我选择任何一个对象时,我会在另一个屏幕上显示与之相关的详细信息。绿色区域是我嵌
UINavigationController
构建的。现在我想用UITabBarController
打破它的某些部分。问题是我有一个活动对象,它在prepareForSegue
方法的帮助下在整个屏幕上传递。
如何集成新的uitabar
并在任何屏幕中传递此活动对象
如果你看到图片,红色部分对我来说很好。我在table view控制器中有对象列表,当我选择任何一个对象时,我会在另一个屏幕上显示与之相关的详细信息。绿色区域是我嵌入在导航控制器上的选项卡栏,我想将所选对象从添加播放器列表发送到第二个选项卡栏访客屏幕
我不明白你的问题。所以,我只是解释我们如何添加
导航控制器上的UITabBarController。请更新问题
在AppDelegate.h
#import "MyTabBarController.h"
现在,在AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
//Use your tab bar controller name instead of MyTabBarController
UITabBarController *tabController = [[MyTabBarController alloc] init];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:tabController];
self.window.rootViewController = nav;
self.window.backgroundColor = [UIColor lightGrayColor]; // choose color
[self.window makeKeyAndVisible];
return YES;
}
在AppDelegate中创建对activeObject的引用。然后让每个视图控制器引用此activeObject 在AppDelegate.swift中
let activeObject = ActiveObject() //Note : Assuming you set up a class for your object
然后,需要将此对象发送到堆栈下的视图控制器
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
let tabBarController = window!.rootViewController as! UITabBarController //Find the tab bar controller
if let tabBarViewControllers = tabBarController.viewControllers {
let navigationController = tabBarViewControllers[0] as! UINavigationController //Access the navigation controller of the first view controller
let myViewController = navigationController.viewControllers[0] as! MyViewController
MyViewController.activeObject = activeObject
}
对所有需要引用对象的选项卡执行此操作。记住,在类声明之后,为选项卡视图控制器(在我的示例代码中称为MyViewController)提供对activeObject的引用
var activeObject:ActiveObject!
我需要遵循的步骤。我尝试了这种方法,我能够获得表视图控件,但我不太熟悉它的工作过程。我还通过嵌入导航控件添加了选项卡栏。你能添加一些屏幕截图/代码,以便我了解你的问题吗?我已经更新了问题。如果不清楚,请告诉我,您想将数据从添加玩家列表传递到Guesture屏幕???