iOS splitViewcontroller 的不同自定义视图控制器

Posted

技术标签:

【中文标题】iOS splitViewcontroller 的不同自定义视图控制器【英文标题】:Different custom View controller for iOS splitViewcontroller 【发布时间】:2013-01-03 06:05:07 【问题描述】:

我有一个包含 master 和 detailview 控制器的 splitview 控制器。但是现在我需要根据 masterviewcontroller(一个 tableview)中的选择来显示不同的自定义视图控制器。我怎样才能做到这一点?

【问题讨论】:

我尝试了两种方法。 1.在详细视图控制器中根据主表视图选择添加不同的视图。我认为这不是正确的方法,方向也有问题。即视图的一部分被剪裁 为什么您认为在选择主视图表的行时填充自定义视图控制器的视图不正确?? 这里我需要为每一行设置不同的编程目的。所以我想,使用具有不同视图的单个视图控制器会使实现文件变得复杂。你觉得正常吗? 完全没问题。为了避免 if 条件检查来填充自定义视图控制器,您最好使用 switch 语句 我是这样做的,现在视图的一部分被剪掉了。会尝试解决这个问题。感谢您的帮助 【参考方案1】:

在主视图控制器中编写以下代码。 根据 indexpath 值决定创建自定义视图。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

     UISplitViewController *splitController = self.splitViewController;
     NSMutableArray *arr = [splitController.viewControllers mutableCopy];

     CustomViewController *customVC = [[CustomViewController alloc]init];
     [arr replaceObjectAtIndex:1 withObject:customVC];
     [customVC release];

     splitController.viewControllers = arr;

【讨论】:

我也试过了,现在的问题是在选择一行后会显示详细的视图控制器,但左侧导航按钮会自动消失。如果我旋转设备并再次旋转到纵向按钮会回来

以上是关于iOS splitViewcontroller 的不同自定义视图控制器的主要内容,如果未能解决你的问题,请参考以下文章

UISlider 详细信息 iOS 5.1 中 Splitviewcontroller 的视图损坏

ios splitviewcontroller 景观失败

ContainerView中嵌入的iOS7 SplitviewController不旋转

splitviewcontroller 的详细视图的帧大小在 ios4.2 中没有改变

iOS splitViewcontroller 的不同自定义视图控制器

IOS 8 SplitViewController iPhone模拟器人像detailView后退按钮问题