¿Cuál es la diferencia entre viewDidLoad() y LoadView()? ¿De qué manera son diferentes el uno del otro?viewDidLoad(), LoadView()
¿Cuál es mejor cuando desarrollamos aplicaciones sin usar XIB?
Gracias.
¿Cuál es la diferencia entre viewDidLoad() y LoadView()? ¿De qué manera son diferentes el uno del otro?viewDidLoad(), LoadView()
¿Cuál es mejor cuando desarrollamos aplicaciones sin usar XIB?
Gracias.
Si está desarrollando aplicaciones sin necesidad de utilizar xib
LoadView()
método se llama y si hay un xib continuación ViewDidLoad
método se llama
lo tanto, es mejor utilizar el método loadView.
Esto no es verdad. ViewDidLoad se llama para mí independientemente – MobileMon
¡Pero cuando escribo el código en ViewDidLoad también funciona! Por favor explica por qué funciona eso. (No estoy usando ningún guión gráfico) –
¿No es obvio?
viewDidLoad
se llama ... Cuando la vista termina de cargarse.
Se llama a loadView
cuando se carga la vista.
Ninguno es mejor o peor. Todo depende de tu diseño.
Buena suerte :)
No hay una gran respuesta. La diferencia crucial, como se afirma en otras respuestas, es si estás (a) usando un xib/nib o (b) creando de forma programática la interfaz de usuario. –
ViewDidLoad
se invoca cuando finaliza la carga de la vista y se invoca loadView
cuando se inicia la carga.
Y cuando haces un nuevo proyecto que vea los comentarios sobre estos métodos que da claramente una punta cuándo se debe utilizar que funcionan
ver este
/*
// Implement loadView to create a view hierarchy programmatically, without using a nib.
- (void)loadView {
}
*/
/*
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
[super viewDidLoad];
}
*/
Estos comentarios son claros y fáciles de entender.
Si tiene la intención de utilizar IB para construir su UI, debe hacer todas las publicaciones de inicialización de IB en viewDidLoad. La clase no llamará a loadView en absoluto si usa una punta para inicializar un controlador.
Si inicializa el controlador en el código, viewController llamará primero a loadView y luego a viewDidLoad. Puede hacer toda su inicialización en loadView o viewDidLoad, según sus preferencias.
Sin embargo, si decide utilizar loadView, asegúrese de configurar la propiedad de vista antes de intentar leer self.view, de lo contrario, entrará en un bucle infinito y se bloqueará.
de acuerdo con la documentación que no debe llamar '[super loadView]'; se supone que debes establecer la propiedad 'view' tú mismo – user102008
Enmendé mi respuesta. ¿Qué loadView de UIViewController es iniciar una vista en blanco. Supongo que podría ser un desperdicio si la implementación del usuario desata la vista establecida por super, pero no dolería. – futureelite7
controlador de vista carga su vista desde el plumín asociado a él si no hay plumín asociado, entonces automáticamente llamó a su método loadView() para completar su Vista. En ese caso, necesita implementar el método loadView(). de forma predeterminada devuelve nulo
cuando su vista se carga a la memoria El método viewDidLoad() se llama aquí, puede hacer su inicialización personalizada de acuerdo con sus necesidades.
Si inicializa su vista desde el archivo stroyboard o xib, no anule este método ni llame a [super loadView] dentro. si llama [super loadView] dentro del método, es mejor que nunca anule este método y ponga el siguiente código en su método viewDidLoad.
si inicializa su vista mediante programación, NUNCA debe llamar a [super loadView]. y debe asignar su propiedad rootView a self.view, o puede obtener un bloqueo perfecto.
viewDidLoad()
se debe utilizar cuando carga su vista desde un NIB y desea realizar cualquier personalización después del inicio.
LoadView()
se va a utilizar cuando se desea crear la vista mediante programación (sin el uso de Interface Builder).
Pls intente este enlace http://stackoverflow.com/questions/573958/iphone-sdk-what-is-the-difference-between-loadview-and-viewdidload – visakh7