在使用startActivityForResult时设置的SingleTop不起作用
2017-09-14 00:05
405 查看
【转载请注明出处:From李诗雨—http://blog.csdn.net/cjm2484836553/article/details/77972725】
不诗意的女程序猿不是好厨师~
问题描述:
今天在使用startActivityForResult启动activity时,发现当过快点击Button时,会弹出很多个Activity页面,查看功能清单文件发现是设置了启动模式为SingleTop了的:
也就是说在使用startActivityForResult启动activity,即使设置了SingleTop也是不起作用的。
于是换了一个SingleInstance再试,发现过快点击Button弹出多个Activity页面的问题是解决了,但是startActivityForResult的回调却不起作用了。
问题原因:
以后有时间再补上 ^~^
解决办法:
1.性价比最高的解决办法:
设置时间间隔,当时间间隔大于一定的数值时,才去启动带回调的activity
2.当点击时设置标记位,在适当的时候再改变标记位
3.不使用startActivityForResult的启动方式,自己写接口回掉或者发广播
积累点滴,做好自己~
不诗意的女程序猿不是好厨师~
问题描述:
今天在使用startActivityForResult启动activity时,发现当过快点击Button时,会弹出很多个Activity页面,查看功能清单文件发现是设置了启动模式为SingleTop了的:
android:launchMode="singleTop"
也就是说在使用startActivityForResult启动activity,即使设置了SingleTop也是不起作用的。
于是换了一个SingleInstance再试,发现过快点击Button弹出多个Activity页面的问题是解决了,但是startActivityForResult的回调却不起作用了。
问题原因:
以后有时间再补上 ^~^
解决办法:
1.性价比最高的解决办法:
设置时间间隔,当时间间隔大于一定的数值时,才去启动带回调的activity
//用于记录进入SaveActivity的时间 private long inSaveActTime; private void setListener() { btnChannelSave.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //当当前的时间-进入SaveActivity的时间<1秒时,直接返回 if ((System.currentTimeMillis() - inSaveActTime) < 1000) return; inSaveActTime = System.currentTimeMillis(); //只有当间隔时间大于1秒才去启动Activity Intent intent_save = new Intent(CreateChannelAct.this, SaveActivity.class); intent_save.putParcelableArrayListExtra("saveDataList", (ArrayList<? extends Parcelable>) rebuildSaveContainer); startActivityForResult(intent_save, CHANNEL_SAVE_REQUEST); } }); }
2.当点击时设置标记位,在适当的时候再改变标记位
3.不使用startActivityForResult的启动方式,自己写接口回掉或者发广播
积累点滴,做好自己~
相关文章推荐
- Activity设置singleInstance后不能启用startActivityForResult()进行数据回调
- single task Activity不能使用startActivityForResult解释
- Activity设置singleInstance后不能启用startActivityForResult()进行数据回调
- Activity设置singleInstance后不能启用startActivityForResult()进行数据回调
- Activity设置singleInstance后不能启用startActivityForResult()进行数据回调
- Activity设置singleInstance后不能启用startActivityForResult()进行数据回调
- 一种轻量级解决startActivityForResult启动Activity导致singleTop模式失效
- TabHost中使用startActivityForResult无法接收返回值的解决方案
- android中使用startActivityForResult回传数据
- Android笔记——startActivityForResult使用
- android中使用startActivityForResult回传数据 或同时销毁几个页面
- 关于Android中startActivityForResult()方法的详细使用
- startActivityForResult的使用方法
- android中使用startActivityForResult回传数据
- android中使用startActivityForResult回传数据(转)
- android中使用startActivityForResult回传数据
- android Activity 之 startActivityForResult 的使用
- TabHost中使用startActivityForResult无法接收返回值的解决方案
- 关于StartActivityForResult方法的使用
- 使用startActivityForResult得到通讯录联系人信息