我试图将用作启动图像的图像显示为背景,并在启动和第一个视图之间显示淡入淡出。 我按如下方式“选择”我想要使用的图像:
NSString *defaultImageName = @"Default.png";
CGFloat imageScale = [[UIScreen mainScreen] scale];
CGSize imageSize = [[UIScreen mainScreen] applicationFrame].size;
if (imageScale > 1) {
if (imageSize.height < 500) {
defaultImageName = @"Default@2x.png";
} else {
defaultImageName = @"Default-568h@2x.png";
}
}
backimg = [UIImage imageNamed:defaultImageName];
UIImageView *backgroundImage = [[UIImageView alloc] initWithImage: backimg];
[self.view addSubview:backgroundImage];
[self.view sendSubviewToBack:backgroundImage];
可悲的是,图像未全屏显示,显示为缩放:
而不是
任何人都可以帮忙吗?
更新#1:
使用[backgroundImage setFrame:CGRectMake(0, 0,self.view.frame.size.width , self.view.frame.size.height)];
答案 0 :(得分:2)
contentMode
设置为居中。您无需使用if语句来确定要使用的图像。只需使用[UIImage imageNamed: @"Default"]
即可。拥有@2x
和-568h
足以让UIImage使用正确的文件。
答案 1 :(得分:0)
使用图片
[[UIImage alloc]initWithContentsOfFile:[[NSBundle mainBundle]
pathForResource:@"xxx" ofType:@"png"]]
而不是
[UIImage imageNamed: @"xxx"]