objective-c - 如何在 OS X Finder 中有条件地为文件和文件夹着色?

标签 objective-c cocoa macos

我想根据 finder 中的某些条件为徽章文件和文件夹着色,在 Mac OS X 10.6 中实现此目的的方法是什么

我查过这个问题:This only talk about the context menu in finder Finder Plugin in Snow Leopard

我什至检查过:http://scplugin.tigris.org/即使他们不在 10.6 中做颜色标记,这是待处理的任务。

在此先感谢您的所有帮助

最佳答案

您可以使用 Mac OS X 10.6 中引入的 URL 资源 API。

NSURL* fileURL = [NSURL fileURLWithPath:@"/Path/to/file"];

id labelValue = nil;
NSError* error;
if([fileURL getResourceValue:&labelValue forKey:NSURLLabelNumberKey error:&error])
{
    NSLog(@"The label value is %@",labelValue);
}
else
{
    NSLog(@"An error occurred: %@",[error localizedDescription]);
}

您可以使用 NSURLLabelNumberKey 获取 Finder 分配的标签的编号,或使用 NSURLLabelColorKey 获取实际颜色。

您可以使用相应的方法设置标签值:

- (BOOL)setResourceValue:(id)value forKey:(NSString *)key error:(NSError **)error

关于objective-c - 如何在 OS X Finder 中有条件地为文件和文件夹着色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2778855/

相关文章:

ios - 如何使用 SDWebImage 将图像从 JSON 加载到 UIImageView?

objective-c - 将未显示的 NSViewController 导出为 JPG

swift - Mac OsX 控制台应用程序 NSURLSession Ssl 问题

python - 程序导致 OSX (Snow Leopard 10.6.4) 窗口服务器自发崩溃

cocoa - 如何在我的安全首选项 Pane 中创建锁定/解锁按钮和行为?

xcode - NSCursor: "set"方法无效

ios - 在 xcode 中找不到生成的头文件

objective-c - cocoa 检查更新

ios - 使用 CocoaPods 添加 CFNetwork

objective-c - NSKeyValueCoding中的IOS 13和Xcode 11崩溃