动作源码分析2Classes/ui/MainInterfaceUI.cpp
2015-06-02 12:54
585 查看
问题1:
ADD_UPDATE_UI宏将ui加入到一个内存池中。定时器会不断的刷新在内存池中得view。(GameUIManager::UIChange)中实现。
这里和下面的代码是不同的
是因为一个数据可以关联多个视图的
class/manager/TimeManager.cpp
这里启动了一个全局的定时器。
(1)异步加载图片资源
(2) 调度uichange
(3) 断线重连(这里有问题,是否加冷却时间?,验证)
uiType的名字起很不恰当,这里是维护一个可以自动弹出的ui的队列。可以更名为autoPopQueque,应该封装到另一个函数中去。
好吧,才进入我们的正题
我们来看第一个函数
init
leftInfoUi这个是控制左边哪些会定时刷新的界面,人物属性面板。
这个文件的主要作用可以找到各个按钮点击后由那个模块负责的。
ADD_UPDATE_UI宏将ui加入到一个内存池中。定时器会不断的刷新在内存池中得view。(GameUIManager::UIChange)中实现。
while (true) { bool is_exist = false; for (int i = 0; i < uiPool.size(); i++) { if (!uiPool.at(i)) { continue; } if (!uiPool.at(i)->getUIModel()) { continue; } if (uiPool.at(i)->getUIModel()->getChange()) { uiPool.at(i)->getUIModel()->setChange(false); for (int j = 0; j < uiPool.size(); j++) { if (!uiPool.at(j)) { continue; } if (!uiPool.at(j)->getUIModel()) { continue; } if (uiPool.at(j)->getUIModel() == uiPool.at(i)->getUIModel()) { uiPool.at(j)->dataChange(); } } is_exist = true; break; } } if (!is_exist) { break; } }
这里和下面的代码是不同的
for(int i = 0; i < uiPool.size(); i++) { if(uiPool[i]->getUIModel()->getChange() == true) { uiPool[i]->getUIModel()->setChange(true); uiPool[i]->getUIModel()->dataChange(); } }
是因为一个数据可以关联多个视图的
class/manager/TimeManager.cpp
这里启动了一个全局的定时器。
(1)异步加载图片资源
(2) 调度uichange
(3) 断线重连(这里有问题,是否加冷却时间?,验证)
uiType的名字起很不恰当,这里是维护一个可以自动弹出的ui的队列。可以更名为autoPopQueque,应该封装到另一个函数中去。
好吧,才进入我们的正题
我们来看第一个函数
init
leftInfoUi这个是控制左边哪些会定时刷新的界面,人物属性面板。
这个文件的主要作用可以找到各个按钮点击后由那个模块负责的。
相关文章推荐
- DB 查询分析器 方便地创建DB2自定义函数
- Mac Error Create Android Project - “Errors running builder 'Android Resource Manager' on project”
- iOS SDK详解之UIDevice(系统版本,设备型号...)
- 手机APP UI设计尺寸基础知识
- CSRF(Cross-site request forgery)跨站请求伪造
- firefox30浏览器,在使用quit()方法退出时,plugin-container.exe崩溃的问题
- 长时间停留在calculating requirements and dependencies 的解决方案
- web.py+mysql插入中文提示query = query.encode(charset) UnicodeEncodeError: 'latin-1' codec can't encode characters in position 86-100
- MYSQL Optimizing LIMIT Queries
- IOS开发----UIImagePickerController详细用法
- GRE Issue 范文 Topic 5
- UIKit 框架之UICollectionViewController
- dyld: Symbol not found: _OBJC_CLASS_$_UIBlurEffect
- ArrayBlockingQueue和ExecutorService的理解与感悟
- iOS学习(1)——UIButton
- 优化UITableViewCell高度计算的那些事
- 后台request获得所有参数(当你不知道它包含什么参数)
- UIImage 按照指定宽度等比例裁切
- GRE ISSUE写作论证论据素材 国家制度建设类
- UIKit 框架之UISearchController