[英]How to get getIntent() to return null after Activity called with an Intent set
这个问题与我原来的问题类似,但我认为有更好的方法来解决问题。
当setIntent后跟一个旋转时,getIntent返回错误的意图
基本上,在扩展FragmentActivity
主Activity
,有两个实例,在Fragment中我将Intent传递给此Activity。
这是有问题的代码:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(...);
if (getIntent() != null && getIntent().getData() != null) {
String data = getIntent().getDataString();
//setIntent(null);
setIntent
试图解决我的问题,但它无法正常工作。
当我点击一个返回我的Activity作为Intent的链接,然后我转到下一个片段,然后我旋转手机,当我调用getIntent
时,两个Fragments之前传递的Intent再次出现时,会发生什么。
所以,当我从Intent中获取数据时,如何设置它以便下一次调用getIntent
将返回null? 或者,将Intent中的数据替换为null是否有意义?
我试图避免更新SharedPreferences中的信息来处理这个问题。
我找到了一个似乎有效的解决方案,但我希望有更好的方法。
if (getIntent() != null && getIntent().getData() != null) {
String data = getIntent().getDataString();
getIntent().setData(null);
setIntent(null);
我认为setIntent
没有任何用处,但是setData(null)
似乎可以解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.