首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android Bundle Nullpointerexception

Android Bundle Nullpointerexception
EN

Stack Overflow用户
提问于 2016-02-28 10:51:57
回答 1查看 239关注 0票数 0

我有两个片段,我试图在它们之间传递一个整数。在第一个版本中,在Fragment_1.java中,我在onCreate中有这样的内容:

代码语言:javascript
复制
pontszam = 12;
Fragment fragment = new Fragment_2();
Bundle bundle = new Bundle();
bundle.putInt("pont", pontszam);
fragment.setArguments(bundle);

然后在第二个片段中,在Fragment_2.java中,我在onCreate中有这样的内容:

代码语言:javascript
复制
Bundle bundle = this.getArguments();
int myInt = bundle.getInt("pont");
TextView pontjelzo = (TextView)rootView.findViewById(R.id.pontszam_2);
pontjelzo.setText(Integer.toString(myInt));

但我在这一行中得到了null指针异常:

代码语言:javascript
复制
int myInt = bundle.getInt("pont");

我做错了什么?

这就是我打开第二个片段的方式:

代码语言:javascript
复制
button_1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            FragmentManager fragmentManager = getFragmentManager ();
            FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction ();

            fragmentTransaction.setCustomAnimations(R.anim.enter_from_right, R.anim.exit_to_left).replace(R.id.content_frame, new Fragment_2());
            fragmentTransaction.commit ();


        }});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-28 11:20:15

您将用一个Fragment替换第一个 Fragment_2,而不是一个有BundleFragment_2。在Fragment_2(全局)之上声明您的onCreate,实例化它:

代码语言:javascript
复制
fragment = new Fragment_2();

并更改您的replace行:

代码语言:javascript
复制
fragmentTransaction.replace(R.id.content_frame, fragment);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35681544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档