cocos2dx 3.0版本TableView拍生自ScrollView,常用来做滚动列表,有几种特殊用法,不知道大家用到过没
要求: 1.滚动时不能选中TableCell,非滚动状态才能选中
很简单,在TableView的delegate函数中,通过isTouchMoved()函数来判断
void WeaponSelectLayer::tableCellUnhighlight(cocos2d::extension::TableView* table,cocos2d::extension::TableViewCell* cell)
{
if (table->isTouchMoved()) {
return;
}
//TODO:Select item.
}
void WeaponSelectLayer::scrollViewDidScroll(cocos2d::extension::ScrollView* view)
{
Point off = view->getContentOffset();
if (off.y < view->minContainerOffset().y) {
view->setContentOffset(Point(off.x,view->minContainerOffset().y));
}
if (off.y > view->maxContainerOffset().y) {
view->setContentOffset(Point(off.x,view->maxContainerOffset().y));
}
}
这种方法有个BUG,当你提供的TableCell不能填充满整个TableVIew的时候,会出现递归死循环,但是保证能填充满整个TableView的时候,整个方法还是可以的,如果大家有更好的办法,洗耳恭听原文:http://www.tuicool.com/articles/yy26jm
原文 http://www.jb51.cc/article/p-mfnsxfmp-xy.html