UIView背景图片调整大小

时间:2015-08-25 17:25:20

标签: ios swift uiview

我有一个UIView(这是我的导航抽屉),我想设置一个背景图像。首先,我尝试了这种方法:

menuView.backgroundColor = UIColor(patternImage: UIImage(named: "menu_image.png")!)

但我只得到了我的UIView的一部分图像。接下来我试图像这样调整图像大小:

UIGraphicsBeginImageContext(menuView.frame.size);
var image = UIImage(named: "menu_image.png")
image?.drawInRect(menuView.bounds)
UIGraphicsEndImageContext()
menuView.backgroundColor = UIColor(patternImage: image!)

但它没有帮助,很奇怪,bcs人说,它帮助了他们。我不明白我做错了什么。

更新

我忘了一行:

UIGraphicsBeginImageContext(menuView.frame.size);
var image = UIImage(named: "menu_image.png")
image?.drawInRect(menuView.bounds)
image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext()
menuView.backgroundColor = UIColor(patternImage: image!)

问题已经结束,thx。

1 个答案:

答案 0 :(得分:4)

Obj-C ...将其转换为Swift并且它将起作用(你错过了一行)

UIGraphicsBeginImageContext(self.view.frame.size);
[[UIImage imageNamed:@"image.png"] drawInRect:self.view.bounds];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

self.view.backgroundColor = [UIColor colorWithPatternImage:image];