que han estado tratando de establecer un color de fondo UIImageView (véase más adelante) en awakeFromNibAccediendo a la vista en awakeFromNib?
[imageView setBackgroundColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:1.0]];
Cuando no funcionó, me di cuenta de que su probablemente porque la vista no se ha cargado todavía y que debería mover el cambio de color para verDidLoad.
¿Puedo verificar que tengo este derecho?
Gary
EDIT_002:
Me acaban de comenzar un nuevo proyecto para comprobar esto desde un comienzo limpio. Configuro la vista de la misma manera que siempre lo hago. El resultado es que los controles están configurados en (null) en awakeFromNib. Aquí es lo que tengo:
CÓDIGO:
@interface iPhone_TEST_AwakeFromNibViewController : UIViewController {
UILabel *myLabel;
UIImageView *myView;
}
@property(nonatomic, retain)IBOutlet UILabel *myLabel;
@property(nonatomic, retain)IBOutlet UIImageView *myView;
@end
.
@synthesize myLabel;
@synthesize myView;
-(void)awakeFromNib {
NSLog(@"awakeFromNib ...");
NSLog(@"myLabel: %@", [myLabel class]);
NSLog(@"myView : %@", [myView class]);
//[myLabel setText:@"AWAKE"];
[super awakeFromNib];
}
-(void)viewDidLoad {
NSLog(@"viewDidLoad ...");
NSLog(@"myLabel: %@", [myLabel class]);
NSLog(@"myView : %@", [myView class]);
//[myLabel setText:@"VIEW"];
[super viewDidLoad];
}
SALIDA:
awakeFromNib ...
myLabel: (null)
myView : (null)
viewDidLoad ...
myLabel: UILabel
myLabel: UIImageView
Me interesaría saber si esto debería funcionar, a partir de los documentos que parece que debería, pero dada la forma en que suelo preparar las cosas que no puedo bastante entiende por qué no lo hace en este caso.
Gracias Zoul, eso es muy interesante. Creo que es mejor utilizar viewDidLoad como forzar la vista para cargar llamadas primero de todos modos.También leí que usar awakeFromNib podría no ser una buena idea en el iPhone, pero parece que hay una opinión mixta sobre eso. Gracias de nuevo ... – fuzzygoat
Si no tiene acceso a la vista, realice un Selector de rendimiento: withObject: demora la llamada desde awakeFromNib. Un truco, pero efectivo. – phatmann
Acabo de tropezar con esta pregunta y respuesta por primera vez, ¡me hubiera ahorrado un montón de problemas si la hubiera encontrado antes! El problema persiste en 2013, y creo que el comportamiento contradice la documentación; consulte aquí: http://stackoverflow.com/questions/17400547/awakefromnib-outlets-and-storyboards-is-the-documentation-wrong –