macos – setResourceValue NSURLTagNamesKey错误

macos – setResourceValue NSURLTagNamesKey错误,第1张

概述尝试使用setResourceValue将标记颜色Blue设置为文件时出错: var error: NSError?let listofTags = NSWorkspace.sharedWorkspace().fileLabelslet theURL:NSURL = NSURL.fileURLWithPath("/Volumes/234567_fr.tif")!var Tag: AnyOb 尝试使用setResourceValue将标记颜色Blue设置为文件时出错:
var error: NSError?let listofTags = NSWorkspace.shareDWorkspace().fileLabelslet theURL:NSURL = NSURL.fileURLWithPath("/Volumes/234567_fr.tif")!var Tag: AnyObject = NSWorkspace.shareDWorkspace().fileLabels[4] // Tag = "Blue"theURL.setResourceValue(Tag,forKey: NSURLTagnamesKey,error: &error)println(error) // Error Domain=NSOsstatusErrorDomain Code=-8050 "The operation Couldn’t be completed. (Osstatus error -8050.)

任何的想法?谢谢您的帮助

解:

1 – setResourceValue的第一个参数必须是NSArray

2 – 令人震惊,但……颜色名称必须是本地化的!

此示例修复了您的错误8050,但如果您的系统语言不是英语,则实际上不会设置颜色标记:

var error: NSError?let theURL:NSURL = NSURL(fileURLWithPath: "/Users/me/tests/z.png")!let tag: AnyObject = NSWorkspace.shareDWorkspace().fileLabels[4] // "Blue" taglet arr = NSArray(object: tag)theURL.setResourceValue(arr,error: &error)

在我的系统(法语)上,这不会设置实际的蓝色标签标签,只会设置包含单词“Blue”的文本标签.

要设置正确的颜色标记,您必须按字面意思提供本地化颜色名称:

var error: NSError?let theURL:NSURL = NSURL(fileURLWithPath: "/Users/me/tests/z.png")!let arr = NSArray(object: "bleu") // "Blue" translated to frenchtheURL.setResourceValue(arr,error: &error)
总结

以上是内存溢出为你收集整理的macos – setResourceValue NSURLTagNamesKey错误全部内容,希望文章能够帮你解决macos – setResourceValue NSURLTagNamesKey错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1089240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存