如何在swift中将背景图像设置为colorWithPatternImage
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在swift中将背景图像设置为colorWithPatternImage相关的知识,希望对你有一定的参考价值。
我的问题是,是否有可能让UIView显示图像,如果有,我怎么做呢?我能找到的只是colorwithpatternImage
,它不再适用于swift。
我现在尝试使用的代码是:
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]];
提前感谢您的回答!
在Swift中,您必须调用便捷初始化程序。这是因为在Swift中,所有返回其类实例的Objective-C类方法都成为了方便的初始化器。
以下是它在Swift中的外观:
self.view.backgroundColor = UIColor(patternImage: UIImage(named: "background.png"))
+ (UIColor *)colorWithPatternImage:(UIImage *)image
返回一个UIColor
实例,因此它将成为Swift中的便利初始化器。同样,UIImage imageNamed:
成为init(patternImage image: UIImage!)
。
我更喜欢这个:
let backgroundImage = UIImageView(frame: UIScreen.mainScreen().bounds)
backgroundImage.image = UIImage(named: "background.png")
self.view.insertSubview(backgroundImage, atIndex: 0)
由于将图像设置为背景颜色会使其有点模糊。
编辑@ User9527的回答了一下。不知道为什么它被投了票..对我来说很棒。刚添加了我自己的自定义框架。
let frame = CGRectMake(10, 55, 45, 45)
let backgroundImage = UIImageView(frame: frame)
backgroundImage.image = UIImage(named: "bg_image")
self.view.insertSubview(backgroundImage, atIndex: 0)
如果你正在尝试使用imageview的图层属性,你应该使用这样的东西
userProfilePic.layer.borderColor = UIColor(patternImage:UIImage(named: "yourimg.png")!).CGColor
您必须为上述代码添加可选绑定才能工作。这是UIImage之后的感叹,如下所示。
view.backgroundColor = UIColor(patternImage: UIImage(named: "backgroundSection.png")!)
这需要我付出相当大的努力,捕获并传递以供参考。请参阅下面的swift生成和使用的完整示例。
参考例
- GitHub(jmr):Texture Reference - '0_1_TextureRef'
演示应用程序
代码摘录
以下是UIView在演示中的纹理,请参阅完整列表的代码 -
func genTexturedView(_ view:UIView) {
...
image.image = UIImage(named:"purple_example");
view.addSubview(image);
print("ViewController.genTexturedView(): Textured View added");
return;
}
以上是关于如何在swift中将背景图像设置为colorWithPatternImage的主要内容,如果未能解决你的问题,请参考以下文章
如何以编程方式在 Swift 中将 uiimageview 设置为 xcode 内置的 applewatch 图标图像?
如何在swift上使用背景颜色将图像设置为imageview中心
SDWebImage 使用 Swift 在 CellView 中将图像设置为 UIButton