Tengo una situación, he creado dos plumillas diferentes, una en modo retrato y otra en modo paisaje. Tenía muchos diseños en la vista, así que tuve que optar por dos puntas diferentes. Ahora, quiero cambiar las puntas como la interfaz gira en laQuiero usar múltiples plumillas para diferentes orientaciones de interfaz iphone
viewController común
para que pueda retener a los valores introducidos y el estado de los controles que tengo en la vista.
En este momento estoy usando
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Override to allow orientations other than the default portrait orientation.
if(interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight){
[self initWithNibName:@"LandscapeNib" bundle:nil];
}else if(interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown){
[self initWithNibName:@"PortraitNib" bundle:nil];
}
return YES;
}
pero no cambia la plumilla, que muestra la punta de carga inicial. Supongo que se está cargando pero no se muestra porque la punta inicial ya se está mostrando, no se elimina. No puedo encontrar la solución de trabajar con múltiples plumillas con un controlador de vista común para que pueda manejar fácilmente la funcionalidad de los controles.
Incluso cuando esto podría funcionar, no recomiendo reemplazar la vista del controlador. Suena sucio, presenta una situación frágil en la que es fácil cometer errores al soltar y retener objetos correctamente. – Michal
En realidad, reemplazar la vista de los controladores será mucho mejor si se espera que el usuario vuelva a girar el dispositivo. No usa tanta memoria, además la rotación será más rápida. Además, si ambas vistas son objetos de clase, pueden desasignarse y liberarse con el controlador de vista. – MishieMoo