Estoy desarrollando una aplicación que usa iOS 5.1 y estoy experimentando un comportamiento extraño con los archivos default.png.iOS 5.1 y Default.png
He añadido los siguientes archivos a mi solicitud:
Default.png - (iPhone)
[email protected] - (iPhone Retina)
predeterminado-Retrato ~ ipad .png - (iPAD)
[email protected]~ipad.png - (iPad Retina)
Cuando se inicia la aplicación, parece que selecciona la imagen Default.png correcta para usar en cada ocasión. Sin embargo en mi AppDelegate tengo una pantalla de presentación simple de hacer más suave la carga de la aplicación y la transición a la aplicación, haciendo algo como:
UIImageView *splashView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,window.frame.size.width, window.frame.size.height)];
splashView.image = [UIImage imageNamed:@"Default"];
[window addSubview:splashView];
[window bringSubviewToFront:splashView];
Sin embargo, el [UIImage imageNamed:@"Default"]
a su vez no selecciona el archivo correcto para cada dispositivo y creo que el problema es la parte -Portrait
del nombre de archivo.
Así como una solución rápida que hice esto:
if(([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad)) {
// Force the image used by ipads
if([[UIScreen mainScreen] respondsToSelector:@selector(scale)] && [[UIScreen mainScreen] scale] == 2.0) {
splashView.image = [UIImage imageNamed:@"[email protected]~ipad"];
}
else {
splashView.image = [UIImage imageNamed:@"Default-Portrait~ipad"];
}
}
else
splashView.image = [UIImage imageNamed:@"Default"];
¿Es así como yo debería estar haciendo esto? ¿Esto te parece gracioso?
¿Te parece gracioso? eso es gracioso – Krishnabhadra
Prueba algunos NSLogging para ver qué está sucediendo exactamente. –
@rokjarc ¿Cómo puede NSLog qué archivo está siendo seleccionado por el SDK cuando hace un simple '[UIImage imageNamed: @" Default "]'? – mobius