使用setResourceValues()的所有示例均如下所示:

var resourceValues = URLResourceValues()
resourceValues.isExcludedFromBackup = true
try? path?.setResourceValues(resourceValues)


但是这不能用Swift 4.1编译,错误是


  无法将“ URLResourceValues”类型的值转换为预期参数
  输入“ [URLResourceKey:任意]”


如何将URLResourceValues转换为[URLResourcesKey:Any]?

最佳答案

您试图在URL的实例上调用NSURL的方法。

NSURL定义:

func setResourceValues(_ keyedValues: [URLResourceKey : Any]) throws


URL定义:

func setResourceValues(_ values: URLResourceValues) throws


由于您使用的是Swift,因此请勿使用NSURL。更新您的代码,使path的类型为URL而不是NSURL,并且对setResourceValues的调用将起作用。

关于ios - 如何在Swift 4.1中使用NSURL:setResourceValues()?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52265662/

10-10 18:39