NSViewAnimation选项NSAnimationNonblockingThreaded把动画放到另一个线程中执行
来源:互联网 发布:淘宝卖家升级规则 编辑:程序博客网 时间:2024/05/17 21:05
NSViewAnimation执行的动画的选项有三个,分别是:NSAnimationBlocking(阻塞)、NSAnimationNonblocking(非阻塞)、NSAnimationNonblockingThreaded(把动画放到另外的线程中)。
苹果官方文档中,关于NSAnimationNonblockingThreaded的说明:
If the constant is NSAnimationNonblocking, the animation runs in the main thread in one of the standard run-loop modes or in a mode returned from
runLoopModesForAnimating. If animationBlockingMode isNSAnimationNonblockingThreaded, a new thread is spawned to run the animation.
实例:
NSRect firstViewFrame;
NSRect newViewFrame;
NSMutableDictionary* firstViewDict;
firstViewDict = [NSMutableDictionarydictionaryWithCapacity:3];
firstViewFrame = [fromView frame];
[firstViewDict setObject:fromViewforKey:NSViewAnimationTargetKey];
[firstViewDict setObject:[NSValuevalueWithRect:firstViewFrame] forKey:NSViewAnimationStartFrameKey];
newViewFrame = firstViewFrame;
newViewFrame.origin.x =self.frame.size.width;
[firstViewDict setObject:[NSValuevalueWithRect:newViewFrame] forKey:NSViewAnimationEndFrameKey];
NSViewAnimation *_slideAnimation = [[NSViewAnimationalloc] init];
[_slideAnimation setDuration:0.5];
[_slideAnimationsetAnimationBlockingMode:NSAnimationNonblockingThreaded];
_slideAnimation.delegate =self;
[_slideAnimationsetViewAnimations:[NSArray arrayWithObjects:firstViewDict, nil]];
[_slideAnimation startAnimation];
// 动画的回调
- (void)animationDidEnd:(NSAnimation*)animation {
[fromViewremoveFromSuperview];
}
- NSViewAnimation选项NSAnimationNonblockingThreaded把动画放到另一个线程中执行
- NSTimer不能放到子线程中去执行否则定时器里边的方法一次都不会执行,应该把它放到主线程才行
- NSViewAnimation视图的简单动画
- java中一个线程等待另一个线程执行完后再执行
- 把winform放到panel中
- 把pscp放到右键中
- 把进程放到ldt中
- LINUX下处理文本中的IP网段,把其中的IP地址抽取出来,放到另一个文件中
- iOS 中使用GCD怎么让两个线程执行完结束后再去执行另一个线程
- QAudioOutput放到次线程中
- 调用SwingUtilities.invokeLater()将更新UI的操作放到事件派发线程中执行
- 把查询语句放到XML文件中
- 怎样把progressbar 放到 statusbar 中
- 把所有语言放到下拉列表中
- 如何把批处理文件放到启动项中
- Oracle把表放到内存中
- 把数据库连接字符串放到配置文件中
- 把帮助文档放到XCODE中
- [转] eclipse反编译插件Jadclipse介绍
- 关于VMWare压缩虚拟机的虚拟磁盘的问题
- 全排列的非递归实现
- 最简单硬盘安装ubuntu 12.04
- 孙鑫VC++第18章ActiveX控件
- NSViewAnimation选项NSAnimationNonblockingThreaded把动画放到另一个线程中执行
- linux mint 添加163源
- js 按钮实现跳转页面 jsp html
- 当当网《舌尖上的中国》销量突破20万册
- 关于System.load()
- compile gst-ffmpeg error: internal compiler error: in set_jump_prob, at stmt.c:2319
- 大小写希腊字母读法
- 字符串中指定字符串的替换
- 高等数学公式