抓狼的羊 2014-09-19 02:07 采纳率: 0%
浏览 4563

android开发调用系统返回键出问题了,求救。。。

首先从主界面跳转登陆界面(只要登陆状态为 false 就跳转登陆)
Intent intent = new Intent(); //跳转登陆界面
intent.setClass(MyWorkActivity.this, LoginActivity.class);
startActivityForResult(intent, 2);

登陆成功是要返回主界面的,同时是要求登陆返回一定数据回来的
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(data == null)
{
System.exit(0);
}
target = data.getExtras().getString("result");//得到新Activity 关闭后返回的数据
}

在登录界面如果登陆成功
Intent intent = new Intent();//数据是使用Intent返回
intent.putExtra("result", "LoginActivity");//把返回数据存入Intent
LoginActivity.this.setResult(RESULT_OK, intent);//设置返回数据
LoginActivity.this.finish();//关闭Activity

但是在登陆如果使用系统的返回键就一直不成功
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
//二次返回退出
if (keyCode == KeyEvent.KEYCODE_BACK) {
if ((System.currentTimeMillis() - exitTime) > 2000) {
exitTime = System.currentTimeMillis();
Toast.makeText(this, "再按一次退出", Toast.LENGTH_LONG).show();
} else {
System.exit(0);

}
return false;
}else
{
return super.onKeyDown(keyCode, event);
}
}

exitTime为long类型变量

但是一直不成功,双击系统返回键,都是一闪然后继续在登陆界面,有些android机子是在第二次双击的时候退出整个应用,,,求大神指导问题出在哪,怎么才能在第一次双击系统返回键就退出当前的应用程序?? 急,,急,,急,, 求教。。。

  • 写回答

2条回答

  • Ly_nine_five 2014-09-19 09:37
    关注

    在自定义application类中用一个arrylist list记录所有打开过的activity,当双击返回键这个事件触发后依次finish掉list数组里面所有的activity。

    评论

报告相同问题?

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序