Android退出按钮代码(Cordova for android怎么在App中处理退出按钮事件)

2024-07-03 08:20:02 :24

android退出按钮代码(Cordova for android怎么在App中处理退出按钮事件)

这篇文章给大家聊聊关于android退出按钮代码,以及Cordova for android怎么在App中处理退出按钮事件对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

本文目录

Cordova for android怎么在App中处理退出按钮事件

项目需要在HTML5 Android App中加入对返回键的处理,发现直接在Activity中加返回键处理代码不起作用,分析cordova源码发现返回键已经被WebView处理掉了,所以只能在js中处理返回键了!@Overridepublic 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);}}在继承了CordovaActivity的Activity中,上面的代码是不会起作用的,因为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消息的插件!代码:// 等待加载PhoneGapdocument.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(’点击了 搜索 按钮!’);}

Eclipse 如何让按钮退出该页面

是要结束一个Activity吗?button.setOnClickListener(new OnClickListener(){ this.close(); //直接结束当前Activity,即可返回到上一个Activity.});

为退出按钮添加确认退出对话框,alert.setButton那几行老是报错;android代码如下,,在线等大神赐教啊

alert.setButton(DialogInterface.BUTTON_NEGATIVE, "取消",new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog,int which) {}});

大神,在Android studio中socket编程,点击一个画面的按钮后直接退出了,显示下面的代码,是什么意思啊

java.lang.NullPointerException 空指针异常.空指针 java.leng.NullPointerException 常见的几种原因是:1.对象未初始化而直接引用对象值或者方法。2.对象引用已经不存在或者被JDBC关闭。 一个经典的例子是JDBC connection已经关闭,ResultSet对象仍然被使用中,这个时候NullPointerException就被抛出。3.违反某些Java容器的限制,读写Null 值。4.例如 java.util.HashTable,它不接受Null 作为Key或者Value,如果试图用Null作为Key去读取HashTable将会得到NullPointerException。Java NullPointerException做为Java Runtime 异常,在开发中减少这样错误的发生就是对代码完成Junit的单元测试,对于一些重要的代码要提高code review的次数从而提高代码质量。

安卓如何退出setContextView跳转的界面

在Android中退出程序比较麻烦,尤其是在多个Activity的程序中,在2.2之前可以采用如下代码退出程序:Java代码 ActivityManager am = (ActivityManager)getSystemService (Context.ACTIVITY_SERVICE); am.restartPackage(getPackageName()); 此种方法是一种最方便和最简单的退出程序的办法,但是在2.2和2.2之后就不能用了,那么如果我们要退出程序有4种办法:采用content view栈:如果程序是多界面,但是又没有强制要求每一个界面一个Activity,可以将每个界面设计为一个View,在界面切换时,只需要调用Activity的setContentView方法设置Activity的Contentview,这样退出程序只需要将这一个Activity退出 就可以了,但是需要设计一个栈来管理content view。可以自定义一个Activity的栈,在程序退出时将栈中的所有的Activity进行finish,这种方法,我以前的文章中有详述。前两种方法的精髓之处都是需要自己设计一个栈用来管理界面或者Activity,这样程序就比较复杂一些。 第3中方法就是,先让程序到Home界面,然后再将process杀死:代码如下:Java代码 Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); android.os.Process.killProcess(Process.myPid()); 还有一种就是使用方法是使用Android的Broadcast机制。在所有的Activity中注册退出程序的消息,当收到消息时调用finish方法。 然后再有退出程序功能的Activity上广播关闭消息。代码如下:Java代码 package com.kingtone.activity; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; /** * 所有Activity的父类,用来注册退出程序的广播事件, * 并且对收到的退出程序事件进行处理 * @author Administrator * */ public class CommonActivity extends Activity { //广播的内部类,当收到关闭事件时,调用finish方法结束activity private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { finish(); } }; @Override public void onResume() { super.onResume(); //在当前的activity中注册广播 IntentFilter filter = new IntentFilter(); filter.addAction(GlobalVarable.EXIT_ACTION); this.registerReceiver(this.broadcastReceiver, filter); } } 在需要退出程序的Activity(CommonActivity的子类)中,退出程序代码如下:Java代码 Intent intent = new Intent(); intent.setAction(GlobalVarable.EXIT_ACTION); // 退出动作 this.sendBroadcast(intent);// 发送广播 super.finish(); //退出后台线程,以及销毁静态变量 System.exit(0);

Android程序中按返回键直接退出了程序,我想按返回键返回上个界面,应该怎么实现,等大神

是从市场下载下来的程序还是自己写的程序不知道怎么实现?如果是前者,那这无能为力,除非逆向编译再修改代码。如果是后者的话,在你的写的activity中的按钮跳转中把finish();去掉就行了,每次跳转activity不必finish该活动,就能返回上一个界面了。

文章分享结束,android退出按钮代码和Cordova for android怎么在App中处理退出按钮事件的答案你都知道了吗?欢迎再次光临本站哦!

android退出按钮代码(Cordova for android怎么在App中处理退出按钮事件)

本文编辑:admin
Copyright © 2022 All Rights Reserved 威海上格软件有限公司 版权所有

鲁ICP备20007704号

Thanks for visiting my site.