gpt4 book ai didi

android - 在 Android 上使用 FragmentActivity.getIntent().getExtras() 时出现 NullPointerException

转载 作者:行者123 更新时间:2023-11-29 22:04:26 25 4
gpt4 key购买 nike

我开始尝试使用 Android Fragment,尤其是将 Activity 显示到水平 PagerAdapter 中。

在全局范围内它工作正常,但我无法将参数传递给我的 framgents 并将它们返回到 onCreateView() 方法中。

基本上,我是这样创建 fragment 的:

Bundle args = new Bundle();
args.putInt(ActionCodes.GAME_INDEX, game.getIndex());
fragments.add(Fragment.instantiate(this, GameReadActivityFragment.class.getName(), args));

请注意,我将 Bundle 参数传递给了 Fragment.instantiate() 方法。

然后,在 GameReadActivityFragment.onCreateView() 中,我执行以下操作:

int gameIndex = this.fragmentActivity.getIntent().getExtras().getInt(ActionCodes.GAME_INDEX);

但是我得到一个 NullPointerException 因为 getExtras() 返回 null :(

我搜索了答案,但找不到答案。我倾向于认为我必须使用不同于 getExtras() 的东西来访问这个 Bundle,但我不知道是什么。

提前致谢。

最佳答案

这样做:

public static MyFragment newInstance(String bar) {
MyFragment frag = new MyFragment();
Bundle args = new Bundle();
args.putString("foo", bar);
frag.setArguments(args);
return frag;
}

然后在onCreateView中,你可以做:

String text = getArguments().getString("foo");

关于android - 在 Android 上使用 FragmentActivity.getIntent().getExtras() 时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11129806/

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