如何在Corona中向TableView中插入行?
2015-2-17 5:29:18
收藏:0
阅读:80
评论:1
我试图将字符串匹配结果(string.find)呈现为一行,有些奇怪...但它只显示最后一次匹配。所以如果我匹配'jan'和'kevin',它只会列出'kevin'
有一种方法可以解决这个问题吗?
代码:
点赞
评论区的留言会收到邮件通知哦~
推荐文章
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
你在外部循环中声明的
tableView意味着它的第一实例会被第二次实例覆盖。一次快速查看 docs 表明,每个event.row允许可选的params表以包含您可能需要呈现行的任何数据。local MasterData = xml:loadFile( "sample.xml") local XMLdataTEST = {} for i=1,#MasterData.child do XMLdataTEST[i] = MasterData.child[i] end -- ** 从循环中移除 ** local function onRowRender( event ) local row = event.row local number = display.newText( row, "" .. row.index .. " - ", 12, 0, nil, 18 ) number:setReferencePoint( display.CenterLeftReferencePoint ) number.x = 15 number.y = row.height * 0.5 number:setFillColor( 0, 0, 0 ) -- ** 修改以使用 params 表 ** local name = display.newText(row, row.params.input1, 12, 0, nil, 18 ) name:setReferencePoint( display.CenterLeftReferencePoint ) name.x = number.x + number.contentWidth name.y = row.height * 0.5 name:setFillColor( 0, 0, 0 ) local score = display.newText(row,"testy", 12, 0, nil, 18 ) score:setReferencePoint( display.CenterLeftReferencePoint ) score.x = display.contentWidth - score.contentWidth - 20 score.y = row.height * 0.5 score:setFillColor( 0, 0, 0 ) end -- ** 从循环中移除 ** local tableView = widget.newTableView { left = 0, top = 0, height = display.contentHeight, width = display.contentWidth, onRowRender = onRowRender, onRowTouch = onRowTouch, listener = scrollListener } tableView.x = display.contentWidth + display.contentWidth/2 + 50 transition.to( tableView, { time=500, x=display.contentWidth / 2, transition=easing.inOutExpo } ) inputNumber = 1 check1 = 'jan' check2 = 'kevin' for i=1,#XMLdataTEST do local data1 = XMLdata[i].child[1].value local data2 = XMLdata[i].child[2].value local data3 = XMLdata[i].child[3].value local data4 = XMLdata[i].child[4].value input1 = string.lower( data1.. "" ) input2 = string.lower(_G['check' .. inputNumber] ) input = input2 if string.find( input1.. "" , input ) then print(inputNumber.. " match with " ..input) inputNumber = inputNumber + 1 local isCategory = false local rowHeight = 40 local rowColor = { 255, 255, 255 } local lineColor = { 220, 220, 220 } tableView:insertRow { isCategory = isCategory, rowHeight = rowHeight, rowColor = rowColor, lineColor = lineColor, -- ** 将 input1 传递给 onRowRender ** params = { input1 = input1 } } end end