为啥我的图像无法在 Swift 中正确加载

Posted

技术标签:

【中文标题】为啥我的图像无法在 Swift 中正确加载【英文标题】:Why is my image not loading correctly in Swift为什么我的图像无法在 Swift 中正确加载 【发布时间】:2014-08-24 14:42:01 【问题描述】:

我已将B1.png 命名的图像存储在Images.xcassets 文件夹中。

这是我的代码。

class ViewController: UIViewController 

    var imageView:UIImageView = UIImageView()

    override func viewDidLoad() 
        super.viewDidLoad()

        let width:CGFloat = 320;
        let height:CGFloat  = 568;
        var buttonTitles = ["Click to begin"]
        var view:UIView = UIView(frame: CGRectMake(0,0,width,height))
        self.view.addSubview(view);
        var backgroundImage:UIImage = UIImage(named:"B1")
        imageView = UIImageView(frame: view.frame)
        imageView.image = backgroundImage
        view.addSubview(imageView)
    

问题:当我运行项目时,它构建时没有错误,但在模拟器中只显示白屏。

【问题讨论】:

好的,这里有一个提示:清理你的语言。 嘿,如果你决定投反对票,请给我至少一句话评论为什么:D??? 您需要细化问题。在调试器中或使用 println 语句确定问题出在哪里。从图像加载开始吗? println("backgroundImage: \(backgroundImage)") 您需要提供尽可能多的相关信息,仅仅折腾一些代码并询问并不足以获得任何有意义的帮助,这可能是否决票的原因。展示您为解决问题所做的一些工作。 是的,我发现“路过”的投票没有任何帮助,所以有时并不是那么友好。但我们确实厌倦了所有在 OP 方面没有任何工作的帖子。 谢谢!很有帮助。 【参考方案1】:

可选类型 UIImage 的值未解包,试试这个(注意!)

        var backgroundImage:UIImage = UIImage(named:"B1")!

【讨论】:

【参考方案2】:

尝试将图像放在您的项目文件夹中,而不是在 Images.xcassets 中并使用:

var backgroundImage:UIImage = UIImage(named:"B1.png") // with file type

【讨论】:

以上是关于为啥我的图像无法在 Swift 中正确加载的主要内容,如果未能解决你的问题,请参考以下文章

无法从 KASlideShow pod 加载图像

为啥我无法正确获取图像数据或无法将数据发送到服务器?

为啥我的图像没有像我指定的那样显示图像 - 在 Swift 中

Swift 3 - 旋转图像在 ImageView 中无法正确显示

无法加载4S拍摄的图像,但可以加载5S

图像未正确加载