码迷,mamicode.com
首页 > 其他好文 > 详细

cocos2dx 开发成长之路 005

时间:2014-10-13 17:05:49      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:blog   http   color   io   os   ar   for   strong   sp   

cocos2dx 3.0版本TableView拍生自ScrollView,常用来做滚动列表,有几种特殊用法,不知道大家用到过没

 

要求:1.滚动时不能选中TableCell,非滚动状态才能选中

很简单,在TableView的delegate函数中,通过isTouchMoved()函数来判断

 

  1. void WeaponSelectLayer::tableCellUnhighlight(cocos2d::extension::TableView* table, cocos2d::extension::TableViewCell* cell)  
  2. {  
  3.     if (table->isTouchMoved()) {  
  4.         return;  
  5.     }  
  6.       
  7.     //TODO:Select item.  
  8. }  

 

bubuko.com,布布扣


要求2:拖拽到边缘没有选项时,TableView不能再被拖拽

 

 

  1. void WeaponSelectLayer::scrollViewDidScroll(cocos2d::extension::ScrollView* view)  
  2. {  
  3.     Point off = view->getContentOffset();  
  4.     if (off.y < view->minContainerOffset().y) {  
  5.         view->setContentOffset(Point(off.x, view->minContainerOffset().y));  
  6.     }  
  7.       
  8.     if (off.y > view->maxContainerOffset().y) {  
  9.         view->setContentOffset(Point(off.x, view->maxContainerOffset().y));  
  10.     }  
  11. }  


这种方法有个BUG, 当你提供的TableCell不能填充满整个TableVIew的时候,会出现递归死循环,但是保证能填充满整个TableView的时候,整个方法还是可以的,如果大家有更好的办法,洗耳恭听

cocos2dx 开发成长之路 005

标签:blog   http   color   io   os   ar   for   strong   sp   

原文地址:http://www.cnblogs.com/niwococo/p/4022272.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!