Android 跳转activity不同状态的操作及实战

第一种方式:
当前app采用系统返回键时,退出当前app程序。重新进入app的时候,页面会被销毁,并且当前activity的状态无法保存,还得重新做一些内部操作。对于这些情况的处理办法在activity中加入下面这几行代码就可以了:

 @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if(keyCode == KeyEvent.KEYCODE_BACK){
            moveTaskToBack(true);
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

假如在做app的时候,用户按系统返回键app给用户提醒 “再按一次退出当前app”,上面代码也可以如下:

 private long isExit = 0;

 @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            if (System.currentTimeMillis() - isExit > 2000) {
                Toast.makeText(this,"再按一次退出当前xxxApp!",Toast.LENGTH_SHORT).show();
                isExit = System.currentTimeMillis();
            } else {
                this.finish();
            }

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

第二种方式:
返回上级activity后,当前activity被销毁。处理方法如下:

 Intent intent = new Intent(DevicesActivity.this, MainActivity.class);
                intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);//如果这个Activity已经被打开了,那就不重新加载
                startActivity(intent);

第三种方式:
只是单纯的返回上级activity,当前activity刷新或者销毁,处理办法如下:

只需要在设置按钮方法中加入  finish();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拉莫帅

你的鼓励将是我的创作动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值