我该如何设置我的UIViewController的背景图片?有什么代码可以实现吗?目前我有以下代码:
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"image.jpg"]];
但我不想使用图案。我希望它可以正确地填满屏幕。
我该如何设置我的UIViewController的背景图片?有什么代码可以实现吗?目前我有以下代码:
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"image.jpg"]];
但我不想使用图案。我希望它可以正确地填满屏幕。
你可以使用:
UIImageView *backgroundImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Blah.png"]];
[self.view addSubview:backgroundImage];
[self.view sendSubviewToBack:backgroundImage];
[backgroundImage release];
代码翻译:
self.view.layer.contents = (id)[UIImage imageNamed:@"background.png"].CGImage;
解释原因:每个视图都由 CALayer 类支持。根据 CALayer 文档:
contents
提供层内容的对象。可动画化。
@property(retain) id contents
Discussion
一个层可以将此属性设置为 CGImageRef,以显示图像作为其内容。默认值为 nil。
而且,这个属性是可动画的。这意味着可以在这个层上使用基于 CoreAnimation 的漂亮转换。 注意:如果支持多种方向,请小心。
这个问题有一个快速的解决方案...
let backgroundImageView = UIImageView(image: UIImage(named: "backgroundImage"))
backgroundImageView.frame = view.frame
backgroundImageView.contentMode = .ScaleAspectFill
view.addSubview(backgroundImageView)
view.sendSubviewToBack(backgroundImageView)
Swift 3.0 的解决方案
self.view.backgroundColor = UIColor(patternImage: UIImage(named: "home02.png")!)
[backgroundImage release];
。 - fulvio