gpt4 book ai didi

android - 在 fragment 中获取 Intent

转载 作者:行者123 更新时间:2023-12-05 00:16:54 24 4
gpt4 key购买 nike

看到this后问题,引起了我的思考。我可以通过在 onCreateView 中调用它来获取 Fragment 中的 Intent:

String Item = getActivity().getIntent().getExtras().getString("name");

这个问题是 getActivity 可能会返回 null,以对抗我可以调用:

if(getActivity() != null)
String Item = getActivity().getIntent().getExtras().getString("name");
}

这会很好地工作,但是..


我正在考虑在我的 Activity 中创建一个静态方法,然后通过调用该方法来访问我的 fragment 中的 Intent,如下所示(在我的 Activity 中):

public class DemoActivity extends Activity{
static String name;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_demo);
//Getting the Intent from the previous Activity
name = getIntent().getStringExtra("name");
}

public static String Name(){
//returning the Intent
return name;
}

}

然后在我的 fragment 中我可以这样调用它:

String name = DemoActivity.Name();

我的问题:

我可以这样做吗?它会引起任何问题吗?为什么?


目前

工作正常。

最佳答案

尝试这样:

Activity 类别:

 Bundle bundle = new Bundle();
bundle.putString("your_key", "your_value");
your_fragment.setArguments(bundle);

fragment 类:

String your_variable = getArguments().getString("your_key");

关于android - 在 fragment 中获取 Intent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51513679/

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