Weex=》Android 手机返回键的处理

    xiaoxiao2023-11-08  163

    在安卓中的WXPageActivity这个类的最外层添加如图下代码: (注意:最好用在AndroidStudio里面添加下面代码,因为还有import java.util.HashMap;import org.json.JSONObject;等包名没导入的,安卓Studio比较方便会提示按Ctrl+Enter自动生成)

    // 监听返回按钮点击事件 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { switch (keyCode) { case KeyEvent.KEYCODE_BACK: Map<String, Object> params = new HashMap<>(); params.put("click", "back"); mInstance.fireGlobalEventCallback("androidback", params); ExitApp(this); return true; } return super.onKeyDown(keyCode, event); } //退出应用 public static long exitTime = 0; public static void ExitApp(final Context context) { if ((System.currentTimeMillis() - exitTime) > 2000) { // Toast.makeText(context, "再按一次退出程序", Toast.LENGTH_SHORT).show(); exitTime = System.currentTimeMillis(); } else { ((Activity) context).finish(); } }

    在weex项目src下面的index.vue中进行监听,来操作回退或者退出事件,如图下代码: script标签下面

    const globalEvent = weex.requireModule('globalEvent')

    created方法下面

    //安卓返回键处理 let self = this globalEvent.addEventListener('androidback', function (e) { if (self.$route.path == '/') { } else { self.$router.go(-1) } })

    最新回复(0)