界面分析:房间号共6位,UI界面上部分是6个Label,用来显示用户输入的房间号,下面共12个按钮,其中有10个按钮数字按钮,用来输入房间号,输入的数字显示在上面的Label上,删除按钮则删除一位已输入的数字,清除则删除所有已输入的数字。当6个数字输入完时发送给服务器进行验证。
逻辑分析:
①首先6个label都是空的,当按一下某个按钮,第一个label就会显示按钮的数字,再按按钮,则第二个label显示数字,即按第n次时,第n个label显示数字(当n小于7时)。所以可以用一个table用来记录已输入的数字,给每个数字button添加一个响应函数,点击时,把数字加入table,如果小于7,则得到table的最后一个值,显示到label上,并判断table是否有6个数字,如果是6个的话则发消息给服务器;若大于7,则从table移除。
②删除时,获得table的长度,即label有数字的最后一位,将label清空,再将table最后一位数据移除
③清除时,把所有有数字的label清空,再将table清空。
local pressNumber = {} --保存输入的数字
local labelNumber = {} --6个显示数字的label
function friendNumber:btn_close()
local btn_close = cc.uiloader:seekNodeByPath(self.ccsNode, "Panel_18/btn_close")
btn_close:onButtonClicked(function()
pressNumber = {}
self:removeFromParent()
end)
end
--6个标签,显示输