当前位置: 移动技术网 > IT编程>移动开发>Android > Android编程模拟HOME键功能示例

Android编程模拟HOME键功能示例

2019年07月24日  | 移动技术网IT编程  | 我要评论

大连长兴岛论坛,袁立透视,爱如少年师小札

本文实例讲述了android编程模拟home键功能的方法。分享给大家供大家参考,具体如下:

做一个类似于qq按返回键并不销毁activity的方法(即不调用activity.finish(),系统不调用 ondestroy),而是类似于按home键,让activity类似于“暂停”(即只调用onpause,ondestroy)。

代码如下:

public boolean onkeydown(int keycode, keyevent event) {
    if(keycode == keyevent.keycode_back){
    intent intent = new intent(intent.action_main);
    intent.setflags(intent.flag_activity_new_task);// 注意
    intent.addcategory(intent.category_home);
    this.startactivity(intent);
    return true;
  }
  return super.onkeydown(keycode, event);
}

特别注意:intent.setflags(intent.flag_activity_new_task); 这句,一定要加上,因为activity 的 launchmode 默认是以 standard 执行的,如果不添加这个标记则会创建新的activity 并放在与当前activity相同的task中。以下是 flag_activity_new_task 的说明 flag_activity_new_task标记

当传递给startactivity()的intent对象包含flag_activity_new_task标记时,系统会为需要启动的 activity寻找与当前activity不同的task。如果要启动的activity的affinity属性与当前所有的task的 affinity属性都不相同,系统会新建一个带那个affinity属性的task,并将要启动的activity压到新建的task栈中;否则将 activity压入那个affinity属性相同的栈中。

更多关于android相关内容感兴趣的读者可查看本站专题:《android开发入门与进阶教程》、《android调试技巧与常见问题解决方法汇总》、《android多媒体操作技巧汇总(音频,视频,录音等)》、《android基本组件用法总结》、《android视图view技巧总结》、《android布局layout技巧总结》及《android控件用法总结

希望本文所述对大家android程序设计有所帮助。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网