注册 登录
主题 : NSProgressIndicator,单线程多线程运用范例
级别: 圣骑士

UID: 2228
精华: 4
发帖: 73
可可豆: 7020 CB
威望: 7020 点
在线时间: 501(时)
注册时间: 2009-02-16
最后登录: 2014-10-30
0 楼:  发表于: 2010-03-03 16:39    发自: Web Page
来源于 Mac类代码 分类

NSProgressIndicator,单线程多线程运用范例    (在iOS代码库中浏览本帖)

最近被这个进度条搞晕了,现在基本搞清楚了,写了个范例出来,如图
还剩下两个问题是:
  1. 即便setUsesThreadedAnimation:YES,setIndeterminate:NO,spinning类型的进度条还是无法在单线程中启动?
  2. 即便setUsesThreadedAnimation:NO,setIndeterminate:YES,bar类型的进度条还是无法在多线程中启动?




附件: ProgressIndicatorDemo.zip (41 K) 下载次数:1092
级别: 风云使者

UID: 1860
精华: 9
发帖: 169
可可豆: 53298 CB
威望: 54249 点
在线时间: 1642(时)
注册时间: 2009-01-09
最后登录: 2018-09-10
1 楼:  发表于: 2010-03-03 19:15    发自: Web Page
其实很简单,不用去关心多线程之类的~
只要记住,不管是bar还是spin
1)setIndeterminate:yes情况下,不管你的app是否多线程,是否block住,progressindicator都能正常动画(这是另一个NSUIHeartBeat线程搞定的,程序员无需care)
2)setIndeterminate:no情况下,如果需要边显示进度边做事情,那你的app必须开一个线程来做事情或者更新progressindicator,就是更新进度条和做事情不能在同一线程内
级别: 圣骑士

UID: 2228
精华: 4
发帖: 73
可可豆: 7020 CB
威望: 7020 点
在线时间: 501(时)
注册时间: 2009-02-16
最后登录: 2014-10-30
2 楼:  发表于: 2010-03-03 22:38    发自: Web Page
不哇,我之前卡就卡在,setUsesThreadedAnimation:YES的情况下,再去用多线程来控制……结果就不动了~~
现在这个范例里面还是有两个莫名的问题,就是顶楼里已经提到的那两个
级别: 风云使者

UID: 1860
精华: 9
发帖: 169
可可豆: 53298 CB
威望: 54249 点
在线时间: 1642(时)
注册时间: 2009-01-09
最后登录: 2018-09-10
3 楼:  发表于: 2010-03-04 15:46    发自: Web Page
引用
引用第2楼bobgreen于2010-03-03 22:38发表的  :
不哇,我之前卡就卡在,setUsesThreadedAnimation:YES的情况下,再去用多线程来控制……结果就不动了~~
现在这个范例里面还是有两个莫名的问题,就是顶楼里已经提到的那两个

我说的就是不要关心setUsesThreadedAnimation:YES
级别: 新手上路
UID: 77220
精华: 0
发帖: 1
可可豆: 10 CB
威望: 10 点
在线时间: 1(时)
注册时间: 2011-06-22
最后登录: 2011-07-05
4 楼:  发表于: 2011-06-22 21:34    发自: Web Page
请问一下这个demo为什么下载不了?
级别: 圣骑士
UID: 83460
精华: 0
发帖: 385
可可豆: 3828 CB
威望: 3828 点
在线时间: 158(时)
注册时间: 2011-07-26
最后登录: 2013-01-31
5 楼:  发表于: 2011-09-14 16:34    发自: Web Page
出错是怎么回事啊!
级别: *
UID: 90879
精华: *
发帖: *
可可豆: * CB
威望: * 点
在线时间: (时)
注册时间: *
最后登录: *
6 楼:  发表于: 2011-09-14 17:49    发自: Web Page
ProgressIndicatorDemo_Prefix.pch:6:28: error: Cocoa/Cocoa.h: No such file or directory 编译错啊
级别: 新手上路
UID: 14565
精华: 0
发帖: 6
可可豆: 60 CB
威望: 60 点
在线时间: 221(时)
注册时间: 2010-02-26
最后登录: 2017-08-30
7 楼:  发表于: 2011-10-07 23:21    发自: Web Page
马克一下,留着以后研究用
级别: 骑士
状态: 连续签到 - [5天]
UID: 55054
精华: 0
发帖: 228
可可豆: 2384 CB
威望: 2262 点
在线时间: 264(时)
注册时间: 2011-03-06
最后登录: 2016-06-23
8 楼:  发表于: 2011-11-10 14:51    发自: Web Page
正在学习,谢谢分享
人生为棋,我原为卒,行动虽慢,可谁曾见我后退一步,哪怕走到尽头仍然是将军
级别: 侠客
UID: 49912
精华: 0
发帖: 64
可可豆: 514 CB
威望: 514 点
在线时间: 35(时)
注册时间: 2011-02-08
最后登录: 2016-01-18
9 楼:  发表于: 2015-06-04 13:12    发自: Web Page
感谢楼主!!!!

CocoaChina社区转载内容已尽可能注明出处,如未能核实来源或转发内容图片有权利瑕疵的,请及时联系社区进行修改或删除【联系方式QQ : 3442093904 邮箱:support@cocoachina.com】文章内容为作者独立观点,不代表CocoaChina社区立场。版权归原作者所有,如申请授权请联系作者,因文章侵权CocoaChina社区不承担任何法律及连带责任。

描述
快速回复

关注本帖(如果有新回复会站内信通知您)

发帖、回帖都会得到可观的积分奖励。查看论坛积分规则

按"Ctrl+Enter"直接提交
    顶部