如何在iOS中为UISplitView更改分隔符颜色

时间:2011-08-04 16:15:13

标签: objective-c ios ipad

是否可以更改分隔线的颜色?如果是这样,怎么样?

我在这里和Google上尽可能地研究,没有运气。我很惊讶它不常见......

由于

4 个答案:

答案 0 :(得分:20)

在iOS 7上,修复方法是将UISplitViewController的背景颜色设置为深背景颜色(可能是黑色)。

答案 1 :(得分:11)

有一种更快捷,更好的方法。只需更改spliViewController的视图backgroundColor属性:

    splitViewController.view.backgroundColor = [UIColor greenColor];

答案 2 :(得分:3)

在SplitViewController的detailViewController中,我添加了以下代码来掩盖黑线。我的自定义标题为蓝色,高88像素。

//blue line that covers the vertical black separator in the header
UIView *blueHeaderSplitViewSeparatorMask = [[UIView alloc] initWithFrame:CGRectMake(320, 0, 2, 88)];
[blueHeaderSplitViewSeparatorMask setBounds:CGRectMake(320, 0, 2, 88)];
[blueHeaderSplitViewSeparatorMask setBackgroundColor:[UIColor colorWithRed:0.0f/255.0f green:96.0f/255.0f blue:182.0f/255.0f alpha:1.0f]];
[self.view.superview addSubview:blueHeaderSplitViewSeparatorMask];

答案 3 :(得分:0)

你的意思是左右视图控制器之间的一点线?不,UISplitViewController没有公开改变它的方法。您可以尝试创建一个与分割视图控制器视图相同大小的不透明视图,并将其backgroundColor设置为您想要的颜色,然后将其添加到其他两个控制器的视图下面,如下所示:

splitController.viewControllers = [NSArray arrayWithObjects:leftController, rightController, nil];
[splitController.view insertSubview:theBackgroundView atIndex:0];