首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UIImage (名称: String)或UIImage swift 4

UIImage (名称: String)或UIImage swift 4
EN

Stack Overflow用户
提问于 2018-06-25 06:34:58
回答 2查看 9.8K关注 0票数 5

在我的应用程序image View中设置我的应用程序资源中的图像,哪种方法更方便?我有两种方法:第一种是函数字符串(名为: UIImage )或UIImage,这两种方法都适合我,但我想知道哪一种最好,这样我以后就可以使用它了

这里有两个例子

代码语言:javascript
复制
//  first

 let myImages1 = ["dice1", "dice2", "dice3", "dice4", "dice5", "dice6"]

 @IBOutlet weak var diceImageView1: UIImageView!

 diceImageView1.image = UIImage(named: myImages1[index1])

// second

 let myImages2 = [ image1, image2, image3, image4, image5, image6 ]

 @IBOutlet weak var diceImageView2: UIImageView!

 diceImageView2.image = myImages2[index2]
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-25 12:28:32

我们使用资产目录中的图像,而不是字符串名称。这是设置UIImage的更好方法。但是从swift 4.2开始,我们不能再使用资产名称。我们应该使用图像文字。示例如下:

代码语言:javascript
复制
let logoImageView: UIImageView = {
    let iv = UIImageView()

    // Set image with image literal
    iv.image = #imageLiteral(resourceName: "feedback")
    return iv
}()

请看下面的屏幕截图。

输入Image Literal之后,您可以双击它并从assets目录中选择您的图像。这是屏幕截图。

但上次我使用了这个库R.swift。在Swift项目中获取强类型、自动完成的资源,如图像、字体和segues。

它在代码中的外观:

票数 5
EN

Stack Overflow用户

发布于 2018-06-25 06:48:33

您可以为UIImage创建一个扩展并让静态变量保存您的图像。

代码语言:javascript
复制
extension UIImage {
    static var dice1: UIImage? {
        return UIImage(named: "dice1")
    }
}


let imageView = UIImageView()
imageView.image = UIImage.dice1

或者您可以在Xcode中使用图像文字,这很好,因为您可以看到实际的图像

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51014512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档