original - fondos de pantalla para iphone 6 hd
establecer imagen de fondo para toda la aplicaciĆ³n de iPhone/iPad (8)
A continuación se explica cómo establecer un fondo para una imagen:
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Background.png"]];
Editar: Para escribir lo que dijo Felixyz (y gracias a Manni), haz esto en tu delegado:
window.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Background.png"]];
Y en cada vista que desee tener la imagen, haga esto:
self.view.backgroundColor = [UIColor clearColor];
Tengo una imagen única que quiero como fondo para mi aplicación sin importar en qué controlador de visualización estén: cómo lo logras?
Depende del tipo de interfaz que tenga. ¿Tabbed? ¿Basado en navegación? Pero la respuesta general es: agregue un UIImageView a su UIWindow antes / debajo de su vista principal. Luego haga que cada vista manejada por su controlador de vista principal tenga un fondo transparente. Es difícil dar consejos más específicos sin saber si usa IB o no, o cómo se ve su jerarquía de vistas.
En mi aplicación, configuré un color de fondo predeterminado. Tal vez puedas hacer esto con tu imagen de fondo:
1 .: Establezca el color de fondo de su UIWindow en su AppDelegate:
window.backgroundColor = [UIColor myBackgroundGray]; // own Category
2 .: Y ahora, haz que todas las otras vistas sean transparentes:
self.view.backgroundColor = [UIColor clearColor]; // = transparent
En su AppDelegate en
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
Agregue esta línea:
[self.window setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]]];
Después de que solo tiene que configurar sus fondos de vistas en [UIColor clearColor];
No estoy seguro de las implicaciones de rendimiento, pero necesitaba lograr algo similar, y terminé usando un UIImageView que funciona bien (en C #, pero funciona igual en obj-c):
//Add the view controller first, to ensure proper order of views later.
Window.RootViewController = new UIViewController();
//create backdrop image view
var imageView = new UIImageView(Window.Bounds);
imageView.Image = UIImage.FromBundle("backdrop.jpg");
//insert into window.
Window.InsertSubview(imageView, 0);
Esto no maneja los cambios de orientación, pero en mi caso, me permitió agregar efectos de movimiento al fondo (como el paralaje).
Su fondo es una propiedad de cualquier objeto que hereda la Vista. Las etiquetas, los botones, los controladores y la ventana de la aplicación, por ejemplo, tienen fondos. Si quieres que sea completamente un bg para toda la aplicación, debes subir la ruta en tus controladores para encontrar la vista "superior" (vista desde abajo) y establecer su fondo para que sea la imagen que deseas.
Usualmente uso esta función para evitar superposiciones con la barra de navegación en iphone.
-(void)setImageBackground:(NSString*)imageName{
UINavigationController* navigationController = [self navigationController];
float height = navigationController.toolbar.frame.size.height;
CGSize size = self.view.frame.size;
size.height = size.height;
UIGraphicsBeginImageContext(size);
CGRect bounds = self.view.bounds;
bounds.origin.y = bounds.origin.y + height;
bounds.size.height = bounds.size.height-height;
[[UIImage imageNamed:imageName] drawInRect:bounds];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
self.view.backgroundColor = [UIColor colorWithPatternImage:image];
}
simplemente llame a este assignbackground
de viewDidLoad
en viewDidLoad
override func viewDidLoad() {
assignbackground()
}
func assignbackground(){
let background = UIImage(named: "background")
var imageview : UIImageView!
imageview = UIImageView(frame: view.bounds)
imageview.contentMode = UIViewContentMode.ScaleAspectFill
imageview.clipsToBounds = true
imageview.image = background
imageview.center = view.center
view.addSubview(imageview)
self.view.sendSubviewToBack(imageview)
}