我做了很多研究,但我找不到我正在寻找的东西:目前,我Deployment Target和Base SDK我的应用程序都设置为10.8,并且运行完美.我可以正确地将通知发布到Mountain Lions新通知中心!
要构建也在Mac OS下运行的应用程序10.6,我将部署目标设置为10.6并构建它(按照此线程中的建议).不幸的是,应用程序在10.6崩溃了,崩溃报告详细说明找不到NSUserNotificationCenter(没有操作系统版本处理).
-
所以我必须做的是检查NSUserNotificationCenter类是否存在:
notificationCenterIsAvailable = (NSClassFromString(@"NSUserNotificationCenter")!=nil);
Run Code Online (Sandbox Code Playgroud)
并基于此布尔标志进行操作.
但是Code不能基于这个标志,比如:
..: <NSUserNotificationCenterDelegate> {NSUserNotificationCenter *center在类的属性中?我的第一个想法是在运行时动态改变类头,即根据类是否存在来添加处理Notificaion Center的方法和属性,但这看起来真的很复杂?!
我UIView在Today小部件中使用了一个子类.该视图使用滑动手势.但是,这些手势要么上下滚动整个通知中心,要么使通知中心从今天切换到通知.
有没有办法阻止触摸事件冒泡到Notification Center滚动视图?[self setExclusiveTouch:YES];不幸的是,在子类中使用并没有解决它.
我想在无边界的NSWindow上获得一个自定义的NSShadow,因为我还在窗口上应用了一些动画,所以我将窗口的内容视图设置为图层支持.
在应用NSShadow时contentView,阴影将被剪切在视图的边框处:

一种可能性是减少contentView'rect(NSInsetRect),但是然后NSWindow调整边框的大小与窗口的外观不匹配!
有没有机会在它的边界之外绘制图层的阴影?
编辑:显示的屏幕截图已经有-10插入矩形!
假设我有一个浮动的、无边框的、圆形的NSWindow。
它是圆形的,因为内容视图只是绘制了一个红色圆圈。
该内容视图需要是图层支持的 ( [contentView setWantsLayer:YES]),因为我正在其上应用CoreAnimations,例如动画缩放。
通常,NSWindow 的可点击区域是由内容视图像素的透明度定义的。然而,不幸的是,一旦 NSWindow 的内容视图变得受图层支持,透明区域也会收到点击。
就我而言,这是一个严重的问题,因为我只想接收半径内的点击。但现在,在窗口矩形内但超出圆半径的单击将激活窗口(从而激活整个应用程序),但事实并非如此。该窗口还可以通过其内容视图的一角进行拖动。

我最初的想法是在子类中实现[NSWindow sendEvent:]并检查单击是否在半径内执行,使用[theEvent locationInWindow]. 我想我可以简单地丢弃该事件,如果它超出了半径,那么就不再调用[super sendEvent:theEvent]。然而这不起作用:我注意到, mouseDown:; window 方法甚至在 sendEvent:; 之前被调用 方法。
我搜索了很多,但我发现的唯一想法是在窗口顶部有一个类似非层支持的 NSWindow 的代理,它有条件地委托点击,但这会导致不可预测的 UI 行为。
你们有什么想法,如何解决吗?
我的一个应用程序(发布版本)没有响应,所以我不得不强制退出它.
OS X提交了一个Hang报告(没有崩溃报告),我将其复制到*.crash文件中.
我知道我可以使用HockeyApp等服务或atos直接表示崩溃报告,但我如何为OS X应用程序表示Hang报告?
到目前为止,OS X 10.8.2的Social.Framework运行良好:
NSURL *requestURL = [NSURL URLWithString:@"https://graph.facebook.com/me/friends"];
SLRequest *fbRequest = [SLRequest requestForServiceType:SLServiceTypeFacebook requestMethod:SLRequestMethodGET URL:requestURL parameters:params];
Run Code Online (Sandbox Code Playgroud)
这适当地传递了me()对象的朋友列表.精细!
但是,一旦我尝试使用字段扩展,如下所示,请求失败并显示错误: 必须使用活动访问令牌来查询有关当前用户的信息:
[NSURL URLWithString:@".../friends?fields=cover,picture"];
Run Code Online (Sandbox Code Playgroud)
事实上,这肯定是因为access_token将使用st在内部附加在Social.framework中.类似于"?access_token =%@",它将与之前的?fields =自己一起使用失败.
所以我想知道这是否真的是框架的错误,或者我是否错误地使用它?我真的很感谢任何有用的信息.