我的工作,有一个自定义的应用程序NSView上NSStatusBar,当用户点击它执行所有的绘图.但这就是问题,我正在绘制的颜色,因为视图的背景颜色与系统蓝色不同.
我的应用程序的颜色:
Twitter的菜单项颜色(系统):
你清楚地看到,我的蓝色比系统轻.这是我目前使用的代码(并且在比Yosemite更早的版本上完美运行):
[[NSColor selectedMenuItemColor] set];
NSRectFill(rect);
Run Code Online (Sandbox Code Playgroud)
我甚至尝试过挑选菜单项的颜色,但似乎颜色受到菜单栏下方壁纸的影响.
关于如何实现系统的任何想法看起来?
我目前正在尝试创建一个类似于Volume OS X窗口的窗口:

为了做到这一点,我有自己的NSWindow(使用自定义子类),透明/无标题栏/无阴影,NSVisualEffectView在其contentView内部.这是我的子类的代码,使内容视图轮流:
- (void)setContentView:(NSView *)aView {
aView.wantsLayer = YES;
aView.layer.frame = aView.frame;
aView.layer.cornerRadius = 14.0;
aView.layer.masksToBounds = YES;
[super setContentView:aView];
}
Run Code Online (Sandbox Code Playgroud)
这就是结果(正如你所看到的,角落是颗粒状的,OS X更平滑):
关于如何使角落更平滑的任何想法?谢谢
我有一个NSTableCellView带有3个文本字段的自定义,1个出现,另外2个是我自己创建的.这是问题所在:

即使单击该行,文本字段的文本颜色也保持不变.我试图实现我通过谷歌搜索发现的代码,但它不起作用.我的自定义NSTableCellView代码是:
- (void)drawRect:(NSRect)dirtyRect{
NSColor *color = [NSColor colorWithCalibratedRed:(26/255.0) green:(26/255.0) blue:(26/255.0) alpha:1.0];
[self.textField setTextColor:color];
color = [NSColor colorWithCalibratedRed:(102/255.0) green:(102/255.0) blue:(102/255.0) alpha:1.0];
[_lbl1 setTextColor:color];
[_lbl2 setTextColor:color];
}
- (void)setBackgroundStyle:(NSBackgroundStyle)backgroundStyle {
NSColor *color = (backgroundStyle == NSBackgroundStyleDark) ? [NSColor windowBackgroundColor] : [NSColor controlShadowColor];
self.textField.textColor = color;
self.lbl1.textColor = color;
self.lbl2.textColor = color;
[super setBackgroundStyle:backgroundStyle];
}
Run Code Online (Sandbox Code Playgroud)
当用户点击标签时,我该怎么做才能使标签的文字颜色变白?
我想做这样的事情NSAlert:
如您所见,"返回"按钮是第二个按钮.我怎样才能做到这一点?
这是我用来创建我的代码的示例NSAlert,但第一个按钮获得焦点:
NSAlert *alert = [[NSAlert alloc] init];
[alert setMessageText:@"Are you sure you want to disconnect?"];
[alert addButtonWithTitle:@"Disconnect"];
[alert addButtonWithTitle:@"Cancel"];
[alert runModal];
Run Code Online (Sandbox Code Playgroud)
我想关注"取消"按钮.有任何想法吗?谢谢!
当耳机插入或拔出耳机插孔时,我想收到通知.
我已经在stackoverflow上搜索了这个,但我似乎无法找到我正在寻找的Mac,我只能找到iOS.
那么,您对如何执行此操作有任何想法吗?我想要做的是:当耳机插入时,我想以编程方式暂停iTunes(类似iOS的功能).
谢谢!
我的应用程序上有一个NSPopover,但我想改变箭头的位置.
是)我有的:
我想要的是:

正如您在第二张图片中看到的那样,NSPopover的箭头位于顶部.我怎样才能做到这一点?
我的代码:
[_popover showRelativeToRect:[sender bounds] ofView:sender preferredEdge:NSMaxXEdge];
Run Code Online (Sandbox Code Playgroud)
谢谢!
我在一些项目中看到过类似的东西:
#if .....
code...
#endif
Run Code Online (Sandbox Code Playgroud)
但我现在找不到它......
比方说,如果应用程序在10.8运行,应用程序会执行1项操作,如果不是应用程序执行其他操作.什么代码来检查它是否在10.8上运行?
谢谢.
我有一个自定义的NSWindow类,它有以下方法:
- (void)setupWindowForEvents{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(windowDidResignKey:) name:NSWindowDidResignMainNotification object:self];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(windowDidResignKey:) name:NSWindowDidResignKeyNotification object:self];
}
-(void)windowDidResignKey:(NSNotification *)note {
NSLog(@"notification");
[self close];
}
Run Code Online (Sandbox Code Playgroud)
我打电话[_window setupWindowForEvents];但windowDidResignKey永远不会被叫.
这就是我调用NSWindow的方式:当单击状态栏项目时,我makeKeyAndOrderFront和窗口显示在状态栏项目的正下方,如下所示:
当窗口失去焦点时,我没有得到任何通知的任何想法?我已经使用了两者NSWindowDidResignMainNotification,NSWindowDidResignKeyNotification看看这些是否有效,但没有一个有效.
我正在尝试创建一个NSObject子类,它将有很多返回颜色的方法,所以UIColor如果我正在构建iOS或者NSColor我正在为OS X构建,我想返回.
这是一种什么样的伪代码预期的行为应该是:
#define COLOR #if TARGET_OS_IPHONE UIColor #elif TARGET_OS_MAC NSColor #endif
+ (COLOR *)makeMeColorful;
Run Code Online (Sandbox Code Playgroud)
有可能做这样的事情,而不是为我的每个对象的方法(一个用于iOS,另一个用于OS X)制作两个方法吗?
所以基本上我正在开发一个应用程序(iOS 9)并设置Associated Domains允许在用户点击我的应用程序的链接时直接打开应用程序.
点击链接并打开我的应用后,状态栏上会出现一个新的后退按钮,允许用户返回上一个应用,如下所示:

我正在使用以下方法捕获此操作(通过链接启动):
- (BOOL)application:(nonnull UIApplication *)application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray * __nullable))restorationHandler
{
if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]) {
NSURL *webURL = userActivity.webpageURL;
NSLog(@"%@", webURL.absoluteString);
}
return YES;
}
Run Code Online (Sandbox Code Playgroud)
有没有办法访问此信息(以前的应用程序,在这种情况下的消息)NSUserActivity或类似的东西?
cocoa ×8
objective-c ×8
macos ×7
nscolor ×2
nswindow ×2
xcode ×2
back-button ×1
core-audio ×1
deep-linking ×1
headphones ×1
ios ×1
ios9 ×1
nsalert ×1
nsmenu ×1
nsmenuitem ×1
nsstatusbar ×1
nstableview ×1
osx-yosemite ×1
popover ×1
uicolor ×1