小编Joa*_*nes的帖子

文件夹大小不对

此代码正确,但文件夹大小错误。如果我更改目录,大小总是错误的。例如,“%@/Caches/com.apple.Safari/Webpage Previews”的大小是 23 MB,但我有 16.5 KB。

NSString *path = [NSString stringWithFormat:@"%@/Caches/com.apple.Safari/Webpage Previews", [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) objectAtIndex:0]];
    NSNumber *fileSize = [[[NSFileManager defaultManager] attributesOfItemAtPath:path error:nil] objectForKey:NSFileSize];
    resultsize += [fileSize unsignedLongLongValue];
Run Code Online (Sandbox Code Playgroud)

我也用过这个,但大小总是错误的:

NSFileManager *fm = [[NSFileManager alloc] init];    
    NSURL *LibraryURL = [[fm URLsForDirectory:NSLibraryDirectory inDomains:NSUserDomainMask] lastObject];
    NSURL *previewsURL = [LibraryURL URLByAppendingPathComponent:@"Caches/com.apple.Safari/Webpage Previews"];

    resultSize += [[[fm attributesOfItemAtPath:[previewsURL path] error:nil] objectForKey:NSFileSize] unsignedIntegerValue];
Run Code Online (Sandbox Code Playgroud)

你能帮助我吗?谢谢。

size macos objective-c osx-lion

1
推荐指数
1
解决办法
960
查看次数

NSEvent单击右侧菜单

当在菜单上向右或向左单击时,我使用此代码有两种不同的行为.

单击左键,然后单击右+ cmd.

如何在没有按cmd +单击的情况下以最简单的方式单击鼠标右键?

-(void)awakeFromNib {

NSImage *image = [NSImage imageNamed:@"menubar"];
NSImage *alternateImage = [NSImage imageNamed:@"menubar-white"];

statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
[statusItem setHighlightMode:YES];
[statusItem setImage:image];
[statusItem setAlternateImage:alternateImage];
[statusItem setAction:@selector(show)];
}


- (void)show {

NSLog(@"call show");

NSEvent *event = [NSApp currentEvent];
//Respond to the mouse click
if ([event modifierFlags] & NSCommandKeyMask) //Command
{
    NSLog(@"RIGHT");
    [statusItem setMenu:statusMenu];
}
else {
    NSLog(@"LEFT");
    //open window
}
}
Run Code Online (Sandbox Code Playgroud)

菜单点击右键

谢谢你的帮助!

objective-c right-click nsmenu nsmenuitem

0
推荐指数
1
解决办法
2025
查看次数

标签 统计

objective-c ×2

macos ×1

nsmenu ×1

nsmenuitem ×1

osx-lion ×1

right-click ×1

size ×1