Ui listview 类
2016-06-30 16:34
417 查看
ListView listView = ListView::create(); --创建列表
listView->setDirection(ui::ScrollView::Direction::VERTICAL);--设置列表方向
listView->setBounceEnabled(true); --设置弹力
listView->setBackGroundImage("cocosui/green_edit.png");--设置背景图片
listView->setBackGroundImageScale9Enabled(true);--设置是否允许九宫格
listView->setContentSize(Size(240, 130); --设置大小
listView->setPosition(Vec2());
listView->addEventListener((ui::ListView::ccListViewCallback)CC_CALLBACK_2(类名::回调函数1, this));//注册事件处理函数
listView->addEventListener((ui::ListView::ccScrollViewCallback)CC_CALLBACK_2(类名:回调函数2, this)); //注册事件处理函数
void 类名::回调函数1(Ref * pSender, ListView::EventType type) --注意这里的参数类型
{
switch (type)
{
case cocos2d::ui::ListView::EventType::ON_SELECTED_ITEM_START:
ListView * listView = static_cast(ListView *)(pSender);
listView->getCurSelectedIndex();
break;
case cocs2d::ui::ListView::EventType::ON_SELECTED_ITEM_END:
ListView * listView = static_cast(ListView *)(pSender);
listView->getCurSelectedIndex();
break;
default:
break;
}
}
void 类名::回调函数2(Ref * pSender, ui::ScrollView::EventType type)
{
switch (type)
{
case ui::ScrollView::EventType::SCROLL_TO_BOTTOM:
break;
case ui::ScrollView::EventType::SCROLL_TO_TOP:
break;
default:
break;
}
}
Layout * default _item = Layout::create(); //创建模型
listView->setItemModel(default_item); //设置模型
listView->pushBackDefaultItem(); //添加默认元素
listView->insertDefaultItem(index); //插入默认元素
Layout * custom_item = Layout::create();
listView->addChild(custom_item); //添加常规元素
listView->insertCustomItem(custom_item, index)
//插入常规元素
Vector<Widget*>& items = listView->getItems(); //返回保存元素的容器
Widget* item = listView->getItem(i); //获取某个索引的元素
ssize_t index = listView->getIndex(item); //获取某个元素的索引
listView->removeChildByTag(1); //继承自CCNode的函数
listView->removeItem(items_count - 1); //删除某个索引的元素
listView->setGravity(ListView::Gravity::CENTER_VERTICAL); //设置重力
listView->setItemsMargin(2.0f); //改变两个元素之间的边界
listView->setDirection(ui::ScrollView::Direction::VERTICAL);--设置列表方向
listView->setBounceEnabled(true); --设置弹力
listView->setBackGroundImage("cocosui/green_edit.png");--设置背景图片
listView->setBackGroundImageScale9Enabled(true);--设置是否允许九宫格
listView->setContentSize(Size(240, 130); --设置大小
listView->setPosition(Vec2());
listView->addEventListener((ui::ListView::ccListViewCallback)CC_CALLBACK_2(类名::回调函数1, this));//注册事件处理函数
listView->addEventListener((ui::ListView::ccScrollViewCallback)CC_CALLBACK_2(类名:回调函数2, this)); //注册事件处理函数
void 类名::回调函数1(Ref * pSender, ListView::EventType type) --注意这里的参数类型
{
switch (type)
{
case cocos2d::ui::ListView::EventType::ON_SELECTED_ITEM_START:
ListView * listView = static_cast(ListView *)(pSender);
listView->getCurSelectedIndex();
break;
case cocs2d::ui::ListView::EventType::ON_SELECTED_ITEM_END:
ListView * listView = static_cast(ListView *)(pSender);
listView->getCurSelectedIndex();
break;
default:
break;
}
}
void 类名::回调函数2(Ref * pSender, ui::ScrollView::EventType type)
{
switch (type)
{
case ui::ScrollView::EventType::SCROLL_TO_BOTTOM:
break;
case ui::ScrollView::EventType::SCROLL_TO_TOP:
break;
default:
break;
}
}
Layout * default _item = Layout::create(); //创建模型
listView->setItemModel(default_item); //设置模型
listView->pushBackDefaultItem(); //添加默认元素
listView->insertDefaultItem(index); //插入默认元素
Layout * custom_item = Layout::create();
listView->addChild(custom_item); //添加常规元素
listView->insertCustomItem(custom_item, index)
//插入常规元素
Vector<Widget*>& items = listView->getItems(); //返回保存元素的容器
Widget* item = listView->getItem(i); //获取某个索引的元素
ssize_t index = listView->getIndex(item); //获取某个元素的索引
listView->removeChildByTag(1); //继承自CCNode的函数
listView->removeItem(items_count - 1); //删除某个索引的元素
listView->setGravity(ListView::Gravity::CENTER_VERTICAL); //设置重力
listView->setItemsMargin(2.0f); //改变两个元素之间的边界
相关文章推荐
- 解读DSI405中的enqueue之:基础
- 当前,我们的DJANGO项目的requirements.txt文件
- 解决UINavigationController在push到新控制器时“卡顿”问题
- iOS 字典的快速赋值 setValuesForKeysWithDictionary
- 线上环境到底要不要开启query cache
- java.lang.IllegalArgumentException: Page directive: invalid value for import
- POJ(2534) Ubiquitous Religions
- Response.cookies和Request.cookies
- confluence 5.8.6升级到5.10.1
- SAP GUI740下载
- PHP中mysql_query()、mysql_num_rows()、mysql_fetch_assoc()等的使用
- 解读DSI405中的enqueue之:诊断脚本
- Processing of multipart/form-data request failed. Stream ended unexpectedly
- JAVA Queue处理
- Elasticsearch Query Language
- LeetCode347. Top K Frequent Elements
- Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled
- 93.AFNetworking manager.requestSerializer.timeoutInterval无效问题 超时无效问题
- UGUI 之 制作敌人不在摄像机视口的UI方向提示(或检测物体在不在摄像机渲染范围内)(四)
- UGUI 之 制作角色受伤屏幕变红的动画提示(三)