我有一个无法解决的问题,我做了一个在标签栏中使用UIsplitview的应用程序。我已经实现了不同的标签,但是现在当我在第一个标签上工作时- UIsplitview没有在横向模式中对齐。你们有什么建议吗-如果我从肖像开始,然后去风景,那就完全没有问题了。

更新:我没有做任何初始化的框架,我已经检查了IB的大小等。下面展示了如何在app委托中添加uisplitview控制器。之所以这样做,是因为我想要一个标签栏控制器中的splitview。当我添加了spilview时,我只是在IB中设置了主视图和细节视图。有点神秘。
if (index == 2) {
detailViewController = [[DetailUserCreatorViewController alloc] initWithNibName:@"DetailUserCreatorView" bundle:nil];
userContent=[[UserContentForPopViewController alloc]init];
userContent.userDetails=detailViewController;
detailViewController.delegate=userContent;
//rootViewController.navigationItem.title = @"List";
UINavigationController *nav = [[[UINavigationController alloc] initWithRootViewController:userContent] autorelease];
splitViewController = [[UISplitViewController alloc] init];
splitViewController.tabBarItem = controller.tabBarItem;
splitViewController.viewControllers = [NSArray arrayWithObjects:nav, detailViewController, nil];
splitViewController.delegate = detailViewController;
[controllers replaceObjectAtIndex:index withObject:splitViewController];
}更新:我尝试在应用程序didfinishlaunch中设置应用程序委托中的选定选项卡- self.tabBarController.selectedIndex = 0;这使选项卡从正确的位置开始。然而,这似乎不是一个适当的解决方案。
发布于 2011-09-02 15:23:11
需要添加一些pointers...splitViewController作为window的子视图:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[window addSubview:splitViewController.view];
[window makeKeyAndVisible];
return YES;
}以下代码不正确。您不应将viewController分配给委派。
splitViewController.delegate = detailViewController;您也不需要下面这行代码:
[controllers replaceObjectAtIndex:index withObject:splitViewController];下面的代码行处理分配委托的那一部分。
splitViewController.viewControllers = [NSArray arrayWithObjects:nav, detailViewController, nil];另外,如果你可以上传你的代码,我会试着改正它,并发回原因和改正的代码…
https://stackoverflow.com/questions/7272533
复制相似问题