Home 和Back键下Activity 生命周期
2016-05-13 11:41
579 查看
1. Home 和Back 键下Activity 生命周期是不一样的
按下Home 键,Activity 实例没有被Destroy. 而 Back 键,Activity 会被Destroy.
具体详细介绍可以参考 http://blog.csdn.net/lixiang0522/article/details/7557558
2. 重写Back 键方法,使Activity 行为与Home 键相同
按下Back 键,Activity 不被Destroy,等App下次进入时, 有更顺畅的UI体验。 可以重写Activity onBackPressed() 方法
有两种方法:
1. 使用MoveTaskToBack(true)
// 2.0 and above
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
// Before 2.0
@Override
public boolean onKeyDown(int keyCode,
KeyEvent event) {
if (keyCode ==
KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
return
true;
}
return
super.onKeyDown(keyCode, event);
}
2. 使用Intent
public void
onBackPressed() {
//实现Home键效果
//super.onBackPressed();这句话一定要注掉,不然又去调用默认的back处理方式了
Intent i= new
Intent(Intent.ACTION_MAIN);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.addCategory(Intent.CATEGORY_HOME);
startActivity(i);
}
具体方法可以参考:
http://blog.csdn.net/kitty_landon/article/details/45718329 http://stackoverflow.com/questions/2000102/override-back-button-to-act-like-home-button
按下Home 键,Activity 实例没有被Destroy. 而 Back 键,Activity 会被Destroy.
具体详细介绍可以参考 http://blog.csdn.net/lixiang0522/article/details/7557558
2. 重写Back 键方法,使Activity 行为与Home 键相同
按下Back 键,Activity 不被Destroy,等App下次进入时, 有更顺畅的UI体验。 可以重写Activity onBackPressed() 方法
有两种方法:
1. 使用MoveTaskToBack(true)
// 2.0 and above
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
// Before 2.0
@Override
public boolean onKeyDown(int keyCode,
KeyEvent event) {
if (keyCode ==
KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
return
true;
}
return
super.onKeyDown(keyCode, event);
}
2. 使用Intent
public void
onBackPressed() {
//实现Home键效果
//super.onBackPressed();这句话一定要注掉,不然又去调用默认的back处理方式了
Intent i= new
Intent(Intent.ACTION_MAIN);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.addCategory(Intent.CATEGORY_HOME);
startActivity(i);
}
具体方法可以参考:
http://blog.csdn.net/kitty_landon/article/details/45718329 http://stackoverflow.com/questions/2000102/override-back-button-to-act-like-home-button
相关文章推荐
- 被人牵着鼻子走是兵家之大忌
- INNODB索引单列不能超767 复合不能超3072
- 随机生成字符串
- 观察者模式 Publish/Subscribe
- XAMPP升级PHP
- Qt之图形(绘制漂亮的圆弧)
- Qt之图形(绘制漂亮的圆弧)
- java复合语句与条件语句
- AllJoyn核心应用教程【第五章】:Base Services服务之Configuration
- Spring boot Common application properties
- C语言中#define用法总结
- 在异步提交Form数据时防止重复提交插件clockSubmit
- iscroll
- PHP中array_chunk()函数
- react-0.14.7
- Nginx源码分析 ——Nginx的进程模型
- iOS关于小数点的四舍五入
- hdu1890 Robotic Sort (splay+区间翻转单点更新)
- 网络协议
- 再谈二叉树:三种遍历六种实现