cocos2d-x lua 使用ListView
来源:互联网 发布:c语言fopen文件路径 编辑:程序博客网 时间:2024/06/06 02:22
cocos2d-x lua 使用ListView
version: cocos2d-x 3.6
本文主要讲述:使用Cocos Studio创建ListView,和列表项的模板,代码中通过模板创建列表的每一项,并替换其中的图片文字等。
1. 加载Cocos Studio编辑好的资源
-- //cocos studio 中资源的名字M.srcLayer = { ["listView"] = "list_view", ["btnFriends"] = "button_friends", ["btnAround"] = "button_around",}M.srcListItem = { ["bg"] = "image_bg", ["img"] = "image_head", ["name"] = "lable_name", ["meter"] = "lable_meter",}function M:loadLayout() if self.m_resNode then self.m_resNode:removeSelf() self.m_resNode = nil end self.m_resNode = cc.CSLoader:createNode("ui/layer_test_listview.csb") -- //load your layout csb assert(self.m_resNode, string.format("ViewBase:createResourceNode() - load resouce node from file \"%s\" failed", resourceFilename)) self:addChild(self.m_resNode) local listView = self.m_resNode:getChildByName(M.srcLayer.listView)end
2. 更新ListView的每一项
function M:refreshListView() local listView = self.m_resNode:getChildByName(M.srcLayer.listView) assert(listView,"") listView:removeAllChildren() local friendList = { {["id"]="1234567890", ["name"]="testName", ["picture"]="test.png"}, {["id"]="1234567890", ["name"]="testName", ["picture"]="test.png"}, {["id"]="1234567890", ["name"]="testName", ["picture"]="test.png"}, {["id"]="1234567890", ["name"]="testName", ["picture"]="test.png"}, } for idx, oneFriend in pairs(friendList) do -- //加载模板项 local oneItem = cc.CSLoader:createNode("ui/layer_test_listview_item.csb") local imgBg = oneItem:getChildByName(M.srcListItem.bg) local imgHead = oneItem:getChildByName(M.srcListItem.img) local lableName = oneItem:getChildByName(M.srcListItem.name) local lableMeter = oneItem:getChildByName(M.srcListItem.meter) -- //reset --imgHead:initWithFileName(oneFriend.picture) --//imgHead是精灵类Sprite lableName:setString(friendInfo.name) --lableMeter:setString(tostring(oneFriend.meter)) --//create layout local listItemLayout = ccui.Layout:create() listItemLayout:setContentSize(imgBg:getContentSize()) listItemLayout:addChild(oneItem) oneItem:setPosition(cc.p(listItemLayout:getContentSize().width / 2.0, listItemLayout:getContentSize().height / 2.0)) listItemLayout:setTag(idx) listView:insertCustomItem(listItemLayout, 0) endend
3. 其他
- 如果想在代码里面创建listview和它的每一个列表项,可直接参照lua test里面的代码
- 注意编辑cocos studio资源的时候不要去拖动每一个空间的4个顶点去缩放它
- 使用page view 和 table view 类似
0 0
- cocos2d-x lua 使用ListView
- cocos2d-x 中使用lua
- Cocos2d-x lua shader使用
- Cocos2d-x lua 使用定时器
- cocos2d-x-2.0 ListView使用
- cocos2d-x-2.0 ListView使用
- cocos2d-x-2.0 ListView使用
- lua使用cocos2d-x中的函数
- Cocos2d-x中使用Lua脚本
- 在cocos2d-x中使用LUA
- Lua 在cocos2d-x中使用
- 在cocos2d-x中使用LUA
- Cocos2d-x 脚本语言Lua的使用
- Cocos2d-x lua CCTableView 的使用
- cocos2d-x lua 类对象的使用
- lua: cocos2d-x中luajit的使用
- Cocos2d-x 脚本语言Lua的使用
- [Cocos2d-x 3.3] Lua Camera使用
- 最长不重复子串
- 【bzoj1002】【FJOI2007】【轮状病毒】
- 如何使用Openair4G的OTG以及进行ping操作
- Java读取属性文件简洁工具类
- 前端构建和模块化工具-coolie
- cocos2d-x lua 使用ListView
- 禁用sslv3协议
- [安卓基础]数据存储之文件
- 用两个栈实现队列
- hdu 5203 Rikka with wood sticks
- word-wrap 文本换行
- 后台开发笔试知识点汇总
- System&Language
- 使用SignalR开发一个数据广播的应用程序