gpt4 book ai didi

java - 如何让 getIntent() 在使用 Intent 集调用 Activity 后返回 null

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:02:51 27 4
gpt4 key购买 nike

这个问题与我最初的问题类似,但我认为有更好的方法来解决问题。

getIntent returns wrong intent when setIntent is followed by a rotation

基本上,在扩展 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 的链接时,会发生什么情况,然后我转到下一个 Fragment,然后我旋转手机,当我调用时,两个 Fragments 之前传递的 Intent 再次显示getIntent.

那么,当我从 Intent 中获取数据时,如何设置它以便下一次调用 getIntent 时返回 null?或者,将 Intent 中的数据改为 null 是否有意义?

我试图避免更新 SharedPreferences 中的信息来处理这个问题。

最佳答案

我找到了一个似乎可行的解决方案,但我希望有更好的方法。

    if (getIntent() != null && getIntent().getData() != null) {
String data = getIntent().getDataString();
getIntent().setData(null);
setIntent(null);

我认为 setIntent 没有任何用处,但 setData(null) 似乎可以解决问题。

关于java - 如何让 getIntent() 在使用 Intent 集调用 Activity 后返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13372326/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com