gpt4 book ai didi

swift - swift 3.1 中文件管理器的问题

转载 作者:行者123 更新时间:2023-11-28 15:44:57 24 4
gpt4 key购买 nike

在 swift 3.1 发布之前,我有以下代码运行良好。

func loadImage() {

id = userPhotoModel.id

let fileManager = FileManager.default

let imagePath = (self.getDirectoryPath() as NSString).appendingPathComponent(photoName)

if fileManager.fileExists(atPath: imagePath){
let imageFromPath = resizeImage(named: (contentsOfFile: imagePath))

print("name of photo retrieved: \(photoName)")

self.userPhoto.image = imageFromPath

}else{
print("No Image")
}
}

现在,swift 3.1 想要添加 as!字符串到:

let imageFromPath = resizeImage(named: (contentsOfFile: imagePath) as! String)

但是,当我运行该应用程序时,它会在此位置崩溃,并且没有错误消息,如下图所示。

这是什么原因造成的?

enter image description here

编辑:这是 resizeImage 函数

fileprivate func resizeImage(named name: String) -> UIImage
{

var image = UIImage(named: name)

if image!.size.height > image!.size.width
{
self.userPhoto.contentMode = .scaleAspectFit
}
else
{
image = image!.resizeTo(self.userPhoto.bounds)
}
return image!
}

最佳答案

问题是行中的语法困惑:

let imageFromPath = resizeImage(named: (contentsOfFile: imagePath))

那应该只是:

let imageFromPath = resizeImage(named: imagePath)

在任何 Swift 3.x 中都不需要转换并且正确。

关于swift - swift 3.1 中文件管理器的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43221310/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com