quick-cocos2d-x中Lua调用JAVA

 local btn
    btn = cc.ui.UIPushButton.new()
            :setButtonLabel(cc.ui.UILabel.new({text = "call Java - showAlertDialog()", size = 64}))
            :onButtonClicked(function()
                if device.platform ~= "android" then
                   -- print("please run this on android device")
                    btn:setButtonLabel(cc.ui.UILabel.new({text = "please run this on android device", size = 32}))
                    return
                end
                
                -- call Java method
                local javaClassName = "org/cocos2dx/lua/AppActivity"
                local javaMethodName = "showAlertDialog"
                local javaParams = {
                    "How are you ?",
                    "I'm great !",
                    function(event)
                        local str = "Java method callback value is [" .. event .. "]"
                        btn:setButtonLabel(cc.ui.UILabel.new({text = str, size = 32}))
                    end
                }
                local javaMethodSig = "(Ljava/lang/String;Ljava/lang/String;I)V"
                luaj.callStaticMethod(javaClassName, javaMethodName, javaParams, javaMethodSig)
            end)
            :align(display.CENTER, display.cx, display.cy)
            :addTo(self)

    btn:setKeypadEnabled(true)
    btn:addNodeEventListener(cc.KEYPAD_EVENT, function (event)
        dump(event)
        local str = "event.key is [ " .. event.key .. " ]"
                        btn:setButtonLabel(cc.ui.UILabel.new({text = str, size = 32}))
        if event.key == "back" then
            --print("back")
            cc.Director:getInstance():endToLua()
            if device.platform == "windows" or device.platform == "mac" then
                os.exit()
            end
        elseif event.key == "menu" then
            --print("menu")
        end
end)
没啥说的,就是给自己做个记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值