UIView cambia el color de fondo a la imagen

Logré cambiar con éxito algunos de mis antecedentes de UIView a una imagen personalizada usando self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"myCustomBackground.jpg"]];

Pero no funciona en una vista particular en un controlador que se presenta modalmente como tal,

LoginViewController *loginViewController = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:[NSBundle mainBundle]];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:loginViewController];    
navController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
navController.navigationBar.barStyle = UIBarStyleBlack;
[self presentModalViewController:navController animated:NO];
[loginViewController release];
[navController release];

Parece que self.view dentro de este controlador está detrás de la vista que estaba mostrando.

EDITAR

LoginViewController.m

- (void)viewDidLoad {
    self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"myCustomBackground.jpg"]];
}

self.view en este caso parece estar oculto detrás de la vista actual que se muestra. No agregué ninguna subvista de antemano.

preguntado el 02 de septiembre de 11 a las 14:09

¿Podemos ver el código que establece el fondo en LoginViewController y en qué método está? -

@picciano Consulte la respuesta editada. Se agregó, pero de alguna manera self.view está detrás de la vista actual que muestra. -

¿Qué contiene LoginView? ¿Etiquetas? ¿Mesa? ¿Desplazarse? -

@Nekto Tiene una UIView. Dentro de UIView, incluye UIScrollView, UILabels y UIButtons, todos creados en IB. La vista que funcionó también tenía elementos similares en el interior. -

1 Respuestas

Como mencionó en sus comentarios, su vista contiene UIScrollView, UILabel y UIButton.

Debe establecer todas las propiedades de esta subvista. backgroundColor = [UIColor clearColor];. Con suerte, eso ayudaría.

Si está editando una subvista en IB, entonces debería encontrar la propiedad Background en el Inspector de atributos y seleccione Clear Color (para todas las subvistas).

Respondido el 02 de Septiembre de 11 a las 19:09

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.