SwiftUI - 检查图像是否存在
SwiftUI - Check If Image Exist
如果图像存在,我正在尝试执行代码。
问题是我无法捕获空图像调用的状态。
结果是我得到一个空图像,但如果可能的话我宁愿放一个占位符图像。
func procImage(inName: String) {
switch (inName) {
case inName:
imageName = inName.lowercased()
default:
imageName = "blank"
}
}
试试这个代码:
func procImage(inName: String) -> UIImage {
if let confirmedImage = UIImage(named: inName) {
return confirmedImage
} else {
return UIImage(named: "Default_Image.png")!
}
}
此检查很简单,但您需要确保默认图像始终存在。
func getSafeImage(named: String) -> Image {
let uiImage = (UIImage(named: named) ?? UIImage(named: "Default.png"))!
return Image(uiImage: uiImage)
}
感谢大家的贡献。
除了 Moreno 的解决方案外,所提供的解决方案在我的案例中不太奏效,但为我的解决方案提供了一条途径。
我不需要存储检查结果,而只是验证文件的存在。
所以这就是我想出的方法。
这可能不是最佳解决方案,因此欢迎改进代码。
func procImage(inName: String) {
let imageConvertToLowercase = inName.lowercased()
if getMember.firstName.lowercased() == imageConvertToLowercase {
if (UIImage(named: imageConvertToLowercase) != nil) {
imageName = imageConvertToLowercase
} else {
imageName = "blank"
}
}
}
如果图像存在,我正在尝试执行代码。 问题是我无法捕获空图像调用的状态。 结果是我得到一个空图像,但如果可能的话我宁愿放一个占位符图像。
func procImage(inName: String) {
switch (inName) {
case inName:
imageName = inName.lowercased()
default:
imageName = "blank"
}
}
试试这个代码:
func procImage(inName: String) -> UIImage {
if let confirmedImage = UIImage(named: inName) {
return confirmedImage
} else {
return UIImage(named: "Default_Image.png")!
}
}
此检查很简单,但您需要确保默认图像始终存在。
func getSafeImage(named: String) -> Image {
let uiImage = (UIImage(named: named) ?? UIImage(named: "Default.png"))!
return Image(uiImage: uiImage)
}
感谢大家的贡献。 除了 Moreno 的解决方案外,所提供的解决方案在我的案例中不太奏效,但为我的解决方案提供了一条途径。 我不需要存储检查结果,而只是验证文件的存在。 所以这就是我想出的方法。 这可能不是最佳解决方案,因此欢迎改进代码。
func procImage(inName: String) {
let imageConvertToLowercase = inName.lowercased()
if getMember.firstName.lowercased() == imageConvertToLowercase {
if (UIImage(named: imageConvertToLowercase) != nil) {
imageName = imageConvertToLowercase
} else {
imageName = "blank"
}
}
}