为什么我不能在Xcode 8中使用新的内联#imageLiteral语法? “返回结果中的预期表达”
我正在尝试从Xcode 8中的assets文件夹中使用新的#imageLiteral
内联图像分配,而不是整个UIImage(named: "")
语法,它只是显示的图像, 如此处所示 。
但是当我这样做时,当它是一个函数时,我得到错误“返回结果中的预期表达式”。
这是一个简单的例子:
func img() -> UIImage { return #imageLiteral(resourceName: "small-checkmark") }
在Xcode中,它显示了预期的small-checkmark
,但由于上述错误,它将无法编译。 一切都为我自动完成,文件位于资源文件夹(PDF)。 我不明白出了什么问题。 如果我只是返回UIImage()
它编译得很好。
我该怎么办?
你应该检查Swift版本。
Build Settings > Use Legacy Swift Language Version = NO
Image Literal仅支持Swift3.0,而不支持Swift2.3。