请教cordova 中android返回键问题

请教cordova 中android返回键问题,第1张

项目需要HTML5 Android App加入返键处理发现直接Activity加返键处理代码起作用析cordova源码发现返键已经WebView处理掉所能js处理返键

@Override

public boolean onKeyDown(int keyCode, KeyEvent event) {

if (keyCode == KeyEvent.KEYCODE_BACK) {

if (exit >1) {

finish()

} else {

Toast.makeText(this, R.string.toast_exit, Toast.LENGTH_SHORT)

.show()

exit++

}

return true

} else {

return super.onKeyDown(keyCode, event)

}

}

继承CordovaActivityActivity面代码起作用WebView已经处理返键事件并退Activity

/*

* Android 2.x needs to be able to check where the cursor is. Android 4.x does not

*

* (non-Javadoc)

* @see android.app.Activity#onKeyDown(int, android.view.KeyEvent)

*/

@Override

public boolean onKeyDown(int keyCode, KeyEvent event)

{

//Determine if the focus is on the current view or not

if (appView != null &&appView.getFocusedChild() != null &&(keyCode == KeyEvent.KEYCODE_BACK || keyCode == KeyEvent.KEYCODE_MENU)) {

return appView.onKeyDown(keyCode, event)

}

else

return super.onKeyDown(keyCode, event)

}

CordovaActivity源码返键处理代码

面代码响应退按钮并提示用户再点击才退

3秒没点击则重新注册事件

注意:window.plugins.ToastPlugin.show_short()显示toast消息插件!

代码:

// 等待加载PhoneGap

document.addEventListener("deviceready", onDeviceReady, false)

// PhoneGap加载完毕

function onDeviceReady() {

//按钮事件

document.addEventListener("backbutton", eventBackButton, false)//返键

document.addEventListener("menubutton", eventMenuButton, false)//菜单键

document.addEventListener("searchbutton", eventSearchButton, false)//搜索键

}

//返键

function eventBackButton(){

//confirm("再点击退!")

window.plugins.ToastPlugin.show_short('再点击退!')

document.removeEventListener("backbutton", eventBackButton, false)//注销返键

//3秒重新注册

var intervalID = window.setInterval(

function() {

window.clearInterval(intervalID)

document.addEventListener("backbutton", eventBackButton, false)//返键

},

3000

)

}

//菜单键

function eventMenuButton(){

window.plugins.ToastPlugin.show_short('点击 菜单 按钮!')

}

//搜索键

function eventSearchButton(){

window.plugins.ToastPlugin.show_short('点击 搜索 按钮!')

}

-

 1.性能

Py3.0运行 pystone benchmark的速度比Py2.5慢30%。Guido认为Py3.0有极大的优化空间,在字符串和整形 *** 作上可

以取得很好的优化结果。

Py3.1性能比Py2.5慢15%,还有很大的提升空间。

2.编码

Py3.X源码文件默认使用utf-8编码,这就使得以下代码是合法的:

>>>中国 = 'china'

>>>print(中国)

china


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11539741.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存