您的位置:首页 > 移动开发 > Swift

swift 关于背景图片的拉伸与平铺

2017-05-09 11:17 246 查看
在ios开发中很多的地方都会需要我们添加背景图片,下面是添加背景图片的方法:

一般的情况下我们往往是通过backgroundImage属性来设置背景图片,但是在有的View中没有backgroundImage这个属性,这时候我们可以通过backgroundColor这个属性来添加背景图,具体方法如下:

例如:

reusableViews.backgroundColor = UIColor(patternImage: UIImage(named:"bg")!)但是这种方法如果图片大小不够则会根据背景页面的大小进行平铺,无法将小图片进行拉伸。
使用以下的方法可以对图片进行拉伸:

方法一: 在layer层改变contents

例如:

reusableViews.layer.contents = UIImage(named: "bg")?.CGImage

方法二:对图片进行重绘  
例如:

let image = UIImage(named: "bg")
UIGraphicsBeginImageContextWithOptions(self.view.frame.size, false, 0.1);
image?.drawInRect(reusableViews.bounds)
let newImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext();
reusableViews.backgroundColor = UIColor(patternImage: newImage)对于这种方法来说如果只是简单的小部分使用还好,对内存没有什么影响,但如果要大量的去使用的话就需要考虑到对内存的消耗了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios 背景图的拉伸