2 zhangya 101314 zhangya_101314 于 2016.09.17 15:08 提问

Fragment 多页面,一层层返回 2C

我的项目里面只有一个Activity,其它页面都是Fragment,现在出先的问题是 Fragment
之间的返回,假如我从Fragment A 跳到 Fragmen B 再从 Fragment B 跳到 Fragement C ,当我按手机的返回键的时候,页面C 会直接跳到Activity首页,代码如下,这是系统退出APP的
/**
* 返回按鈕的點擊事件
*/
@Override
public void onBackPressed() {
//Toast.makeText(getApplicationContext(),"回到首页",Toast.LENGTH_SHORT).show();
MyApplication.getInstance().getHomeFragment().list.clear();
MyApplication.getInstance().getHomeFragment().initListDate();
MyApplication.getInstance().getHomeFragment().initShrink();

}
/**
 * 點擊兩次返回鍵返回程序
 *
 * @param keyCode
 * @param event
 * @return
 */
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        exit();
        onBackPressed();
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

public void exit() {
    if ((System.currentTimeMillis() - exitTime) > 2000) {
        Toast.makeText(getApplicationContext(), "再按一次退出程序",
                Toast.LENGTH_SHORT).show();
        exitTime = System.currentTimeMillis();
    } else {
        finish();
        System.exit(0);
    }
}

2个回答

qq_24827089
qq_24827089   2016.09.17 17:55

记录当前显示的fragment,在onKeyDown中判断当前fragment是否是最底层的fragment,不是就返回前面的fragment,

qq_27665781
qq_27665781   Rxr 2016.09.18 08:44

http://blog.csdn.net/qq_27665781/article/details/49904055 。。 back之前判断当前fragement。

Csdn user default icon
上传中...
上传图片
插入图片