2011-08-04 10 views
9

仕切りの色を変更することはできますか?もしそうなら、どうですか?UISplitViewのiOSで仕切りの色を変更する方法

私は可能な限りここで、Googleで運がないと研究しました。私はあなたが左と右のビューコントローラ間の1点ラインを意味...

おかげ

答えて

3

detailViewControllerでSplitViewControllerの黒い線を隠すために次のコードを追加しました。私のカスタムヘッダーは青で、高さは88pxです。 iOSの7で

//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]; 
0

それがより一般的ではありません驚いていますか?いいえ、UISplitViewControllerはそれを変更する方法を公開していません。あなたは、このような他の二つのコントローラの見解の下にそれを追加し、分割ビューコントローラのビューとしたい色にそのbackgroundColorセットと同じサイズで、不透明なビューを作成してみてください:

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

おかげで、私はこのショット与えるでしょう。 –

19

、修正が(おそらく黒)深い背景色と同じに、あなたのUISplitViewControllerの背景色を設定することです。

+0

iOS 6でも動作します。 [self.splitViewController.view setBackgroundColor:[UIColor redColor]]; – GxocT

+1

iOS8&Swift too: 'self.splitViewController?.view.backgroundColor = UIColor.redColor()' –

+0

これはステータスバーを処理していないようです。仕切りは、20pxの上を除いてどこでも黒です。 –

11

すばやく、より良い方法があります。ただ、spliViewControllerのビューbackgroundColorプロパティ変更:

splitViewController.view.backgroundColor = [UIColor greenColor]; 
+0

よろしくお願いします。 – Vats

関連する問題