ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

android – 为什么我的FragmentTransacton()或FragmentManager.beginTransaction()会遇到空指针异常

2019-07-17 14:32:45  阅读:269  来源: 互联网

标签:android nullpointerexception


我收到了nullPointerException:

java.lang.RuntimeException: Unable to start activity ComponentInfo{---private---}: 
      java.lang.NullPointerException: Attempt to invoke virtual method 'android.support.v4.app.FragmentTransaction 
      android.support.v4.app.FragmentManager.beginTransaction()' on a null object reference
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
            at android.app.ActivityThread.access$800(ActivityThread.java:144)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:135)
            at android.app.ActivityThread.main(ActivityThread.java:5221)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.support.v4.app.FragmentTransaction 
      android.support.v4.app.FragmentManager.beginTransaction()' on a null object reference
            at com.zero. ??? .BoxFragment.newInstance(BoxFragment.java:59)
            at com.zero. ??? .MainActivity$SectionPagerAdapter.getItem(MainActivity.java:111)
            at com.zero. ??? .MainActivity.onCreate(MainActivity.java:58)
            at android.app.Activity.performCreate(Activity.java:5937)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
            at android.app.ActivityThread.access$800(ActivityThread.java:144)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:135)
            at android.app.ActivityThread.main(ActivityThread.java:5221)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
05-02 17:52:00.093    2227-2227/com.zero.mytoolroom I/Process﹕ Sending signal. PID: 2227 SIG: 9

在这种方法中

/* returns a new instance of this fragment for the given section number */
public BoxFragment newInstance(int sectionNumber) {
    Log.v(LOG_TAG, "inside newInstance()");
    manage = getFragmentManager();
    BoxFragment fragment = new BoxFragment();
    Log.v(LOG_TAG, "box fragment created");
    Bundle args = new Bundle();
    args.putInt(ARG_SECTION_NUMBER, sectionNumber);
    fragment.setArguments(args);
    transaction = manage.beginTransaction();
    transaction.add(R.id.box_layout,fragment).addToBackStack(null);
    transaction.commit();
    return fragment;
}//end newInstance() 

解决方法:

把它放在你的代码中:

FragmentManager manager = getActivity().getSupportFragmentManager()

标签:android,nullpointerexception
来源: https://codeday.me/bug/20190717/1489545.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有