我已经四处寻找如何执行此操作,但我找不到任何答案.
我想知道我NSTextfield是否已经截断了文本(...在最后),而不必检查其长度stringValue.我需要这样做才能知道我是否应该在我的工具提示上设置NSTextfield(就像一个简单的标签).
我不想检查我的文本字段长度stringValue的原因是因为有些字符比其他字符占用更多的空间,所以这不是很准确
谢谢!
使用Objective-C和Cocoa API,如何搜索"dog"的OSX系统字典定义并检索结果以便我可以显示它们?
我试图通过facebook api向facebook发布一个groovehark网址,但每当我分享时,例如,http://grooveshark.com/#!/ s /〜/ 4C47F9 (通过api)我无法正确播放在Facebook上,我被重定向到网页,音乐小部件播放该音乐.
但如果我将上述链接复制粘贴到脸书,我可以在Facebook上播放音乐.
怎么了?发布时我正在使用"url"字段.
试试吧.
我通过objective-c框架使用facebook api.代码是:
[variables setObject:@"hello there" forKey:@"message"];
[variables setObject:@"grooveshark.com/#!/s/~/4C47F9 " forKey:@"link"];
Run Code Online (Sandbox Code Playgroud) 我有一个NSWindow我想在所有东西面前(计算机的每个应用程序,全屏应用程序等).即使我在后台应用程序中单击,也NSWindow无法转到后台.并且NSWindow必须遵循用户屏幕,例如,如果用户将桌面切换到desktop2,依此类推......我该怎么做?
谢谢!
我有一个透明NSWindow的屏幕跟随用户的屏幕到处走(NSWindow每个应用程序前面的停留,无论什么,甚至全屏应用程序).
因为NSWindow我有一个mouseDown显示弹出窗口的事件.假设我在全屏模式下进行safari,我在它前面有我的窗口,我点击safari然后再次点击我的窗口:没有任何反应,mouseDown不会发生.我必须再次点击这样才能mouseDown触发事件.
我怎么能强迫我NSWindow总是活跃所以我不必点击它2x触发mouseDown当我点击一个后台应用程序并再次点击我的窗口?
谢谢!
我想执行以下操作:
当我单击状态栏项目(NSStatusItem)时,我想无限期地突出显示它(没有菜单),当应用程序失去焦点时,我想停止突出显示它.
有没有办法做到这一点?我找不到,tbh.
我必须按照代码来捕获mouseDown自定义的 s NSView,但我认为这只捕获了多少次点击(使用 )clickCount,而不是捕获了多少根手指被点击:
- (void)updateTrackingAreas{
if(trackingArea != nil) {
[self removeTrackingArea:trackingArea];
}
int opts = (NSTrackingMouseEnteredAndExited | NSTrackingActiveAlways);
trackingArea = [[NSTrackingArea alloc] initWithRect:[self bounds]
options:opts
owner:self
userInfo:nil];
[self addTrackingArea:trackingArea];
}
- (void)mouseDown:(NSEvent *)theEvent{
NSLog(@"%li",theEvent.clickCount);
if ([theEvent clickCount] == 3){
NSLog(@"3");
}else{
NSLog(@"normal");
}
}
Run Code Online (Sandbox Code Playgroud)
关于如何在我的自定义 NSView 上用 3 个手指捕捉 1 次点击,有什么想法吗?我想重现类似 Finder.app 选项的内容,您可以用 3 个手指点击文件,然后会显示一个 QuickLook 面板。
谢谢!
我正在开发这款推出其他应用的应用.我正在使用以下方式收听应用启动:
[[[NSWorkspace sharedWorkspace] notificationCenter] addObserver:self
selector:@selector(appLaunched:) name:NSWorkspaceDidLaunchApplicationNotification
object:nil];
Run Code Online (Sandbox Code Playgroud)
我使用它启动它们(Mail只是一个例子):
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[NSArray arrayWithObject:@"lalalala"], NSWorkspaceLaunchConfigurationArguments, nil];
[[NSWorkspace sharedWorkspace] launchApplicationAtURL:[NSURL URLWithString:@"/Applications/Mail.app"] options:NSWorkspaceLaunchWithoutActivation configuration:dict error:nil];
Run Code Online (Sandbox Code Playgroud)
我做了一些研究,我发现你可以在启动应用程序时发送一个参数(这就是我dict在上面的代码中使用var的原因),但我遇到了这个问题:即使使用NSWorkspaceLaunchWithoutActivation,Mail.app也是推出并专注于新的作曲窗口.我不知道为什么会这样做.
另一件事,如果我设法成功发送自定义参数而不关注应用程序,我如何检查应用程序是否由我发起(检查参数是否存在)?
PS:我正在寻找App Store准备好的方法.
我一直NSVisualEffectViews在Yosemite和透明的标题栏中玩,但我想知道是否有可能有一个自定义标题栏,我自己的基色(不是那个灰色),就像苹果公司一样.
这是我目前的NSWindow:
我通过在自定义上设置以下代码来实现此外观NSWindowController:
self.window.styleMask = self.window.styleMask | NSFullSizeContentViewWindowMask;
self.window.titleVisibility = NSWindowTitleHidden;
self.window.titlebarAppearsTransparent = YES;
Run Code Online (Sandbox Code Playgroud)
那种蓝色只是一种习惯NSView,rect用特定的颜色绘制它.它下面的内容是NSTableView.
因此,我的目标是实际让我的标题栏像地图一样工作,但不是将"基础"颜色作为灰色,我的"基础"颜色将是蓝色,当NSTableView滚动时,该内容出现在我的标题栏下面.
关于如何实现这一点的任何想法?谢谢
objective-c ×8
cocoa ×7
macos ×7
nswindow ×3
xcode ×3
api ×1
blur ×1
cocoa-touch ×1
dictionary ×1
facebook ×1
grooveshark ×1
highlight ×1
hyperlink ×1
ios ×1
login ×1
mousedown ×1
nsevent ×1
nsstatusitem ×1
nstextfield ×1
storyboard ×1
titlebar ×1
transparent ×1
truncate ×1
uitableview ×1
widget ×1