cocos-Lua中的EditBox

其实,你有没有想过,为什么我们在聊天的时候可以输入文字,这么的神奇而在玩游戏的时候,也有一个注册,登录的输入的界面,输入文字又是怎么实现的呢在我做游戏的过程中,看了一下,其实我们在做界面的时候,就设置了一个类型为TextFiled的输入框,之后,在安卓系统中,其实我也不知道其中是怎么检测知道我的是输入框,总之,其会在我点击输入框的时候,自动弹出输入法,这样就实现了文字的输入输出我
摘要由CSDN通过智能技术生成

 

其实,你有没有想过,为什么我们在聊天的时候可以输入文字,这么的神奇
在玩游戏的时候,也有一个注册,登录的输入的界面,输入文字又是怎么实现的呢


在我做游戏的过程中,看了一下,其实我们在做界面的时候,就设置了一个类型为TextFiled的输入框,之后,在安卓系统中,其实我也不知道其中是怎么检测知道我的是输入框,总之,其会在我点击输入框的时候,自动弹出输入法,这样就实现了文字的输入输出


我问了一下大神,在cocos引擎中已经封装有怎么样去调用安卓输入法这方面的内容,不需要我们去担心

在cocos2dx引擎中有一个sample,说明了编辑框的事件处理
我在里面增加了中文注释
-- lua sample
local function editboxEventHandler(eventType)
    if eventType == "began" then
        -- 点击编辑框,输入法显示
    elseif eventType == "ended" then
        -- 当编辑框失去焦点并且键盘消失的时候被调用
    elseif eventType == "changed" then
        -- 输入内容改变时调用
    elseif eventType == "return" then
        -- 用户点击编辑框的键盘以外的区域,或者键盘的Return按钮被点击时所调用
    end
end
local editbox = cc.EditBox:create(Size(...), Scale9Sprite:create(...))
editbox = registerScriptEditBoxHandler(editboxEventHandler)

当我们处于这些状态的时候就会响应相应的事件

下面是创建一个输入框

一个EditBox框,里面包括了一个TextFiled的输入框,还加了一个正常状态的Sprite

local editBox = ccui.EditBox:create(textField:getContentSize(), ccui.Scale9Sprite:create())

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值