Android启动模式之SingleTask和onNewIntent方法
来源:互联网 发布:matlab数据毛刺 编辑:程序博客网 时间:2024/06/06 08:51
Android 的四大启动模式相信大家都不陌生,这里记录一下在使用SingleTask模式时碰到的问题
SingleTask模式的特点
- SingleTask模式的Activity不管是位于任务栈的栈顶还是栈底,再次运行这个Activity时,都会destory掉它上面的Activity来保证整个栈中只有一个自己
- SingleTask模式的Activity只要任务栈中存在实例就不会重新创建
- SingleTask模式的Activity实例已经存在任务栈中,当被重新调用回到栈顶时,会调用onNewIntent方法
碰到的问题:通过Intent唤起已经存在任务栈中的SingleTask模式的Activity时没有更新Intent
public class SingleTaskActivity extends BaseActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_single_task); }}public class NomarlActivity extends BaseActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_normal); } private void startSingleTaskActivity() { Intent intent = new Intent(this, SingleTaskActivity.class); intent.putExtra("key", 1); startActivity(intent); }}
如上,当NomarlActivity调用startSingleTaskActivity时,intent中传的值并不能在SingleTaskActivity中通过getIntent()获取到。
这就需要onNewIntent方法来更新Intent了
public class SingleTaskActivity extends BaseActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_single_task); } @Override public void onNewIntent(Intent intent) { super.onNewIntent(intent); setIntent(intent); }}
OK!以后如果用到了SingleTask模式,一定要记得复写onNewIntent方法!
阅读全文
0 0
- Android启动模式之SingleTask和onNewIntent方法
- 【Android】 Activity启动模式singleTask的数据传输 onNewIntent方法
- onNewIntent()与singleTask启动模式
- android启动模式之singleTask
- Android活动Acitivity启动模式之singleTask
- Android启动模式之singleTask解析
- Android启动模式之singleTask解析
- android-activity之singleTask启动模式
- Android活动Acitivity启动模式之singleTask
- android:Activity启动模式之singleTask(一)
- android:Activity启动模式之singleTask(二)
- Android 启动模式之三 singleTask
- singletask和onNewintent
- Activity启动之SingleTask------onNewIntent的用法及原理
- Android启动模式与onNewIntent
- Activity启动模式之singleTask
- launchMode启动模式之singleTask
- Android 启动模式中巧用singleTask
- 关于开启蓝牙的一些问题
- ajax 和jsonp 不是一码事 细读详解
- C++结构体:默认构造函数,复制构造函数,重载=运算符
- 11.计算容器最大储水量
- iOS 点击Tableview中的Button来确定Section和Row
- Android启动模式之SingleTask和onNewIntent方法
- 特征值和特征向量的数学表示
- hdoj1102 Constructing Roads(最小生成树)
- 微信中浏览网站分享图片描述
- python程序后台运行命令
- javascript实现图片循环渐显播放的代码(图片轮播)
- 项目中配置多个target及podfile文件配置
- 优先队列
- linux下动态链接库(.so)的显式调用和隐式调用