2011-08-04 13 views

Respuesta

3

En el detailViewController del SplitViewController, agregué el siguiente código para cubrir la línea negra. Mi encabezado personalizado es azul y 88px alto.

//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

Te refieres a la línea de un punto entre el controladores de vista izquierda y derecha? No, UISplitViewController no expone una forma de cambiar eso. Usted puede tratar de crear una vista opaco con el mismo tamaño que la vista del controlador de vista dividida y su backgroundColor conjunto con el color que desee, a continuación, agregarlo a continuación la opinión de los otros dos controladores como esto:

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

Gracias, le daré una oportunidad. –

19

En iOS 7, la solución es establecer el color de fondo de su UISplitViewController al igual que el color de fondo de profundidad (probablemente negro).

+0

Funciona con iOS 6 también. [self.splitViewController.view setBackgroundColor: [UIColor redColor]]; – GxocT

+1

iOS8 y Swift también: 'self.splitViewController? .view.backgroundColor = UIColor.redColor()' –

+0

Esto no parece manejar la barra de estado. El divisor es negro en todas partes, excepto en 20px en la parte superior. –

11

Hay una forma más rápida y mejor de hacerlo. Simplemente cambie la vista de spliViewController backgroundColor propiedad:

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

GRACIAS, +1 por ti. – Vats

Cuestiones relacionadas