0

내 앱에 탐색 창을 구현하고 조각을 사용하여 탐색 창을 제안하고 사용자가 탐색 창에서 항목을 선택하면 실행중인 조각을 변경합니다. 모든 조각을 새 프래그먼트로 대체하려고하면 내 응용 프로그램이 다운됩니다. 여기에 조각을 바꾸기 위해 사용하는 코드가 있습니다.Android -replace running fragment

Body newFragment = new Body(); 

      android.support.v4.app.FragmentManager fragmentManager = getSupportFragmentManager(); 
      android.support.v4.app.FragmentTransaction transaction = fragmentManager 
        .beginTransaction(); 

      // Replace whatever is in the fragment_container view with this 
      // fragment, 
      // and add the transaction to the back stack 
      transaction.replace(R.id.llhome, newFragment); 
      transaction.addToBackStack(null); 

      // Commit the transaction 
      transaction.commit(); 

편집 : 아래 당신이 android.support.v4.app.FragmentTransaction transaction = fragmentManager .beginTransaction();

바꾸기이 라인에서 NPE가 생각하는 나의 로그 캣

06-18 13:53:10.142: E/AndroidRuntime(17700): FATAL EXCEPTION: main 
06-18 13:53:10.142: E/AndroidRuntime(17700): java.lang.NullPointerException 
06-18 13:53:10.142: E/AndroidRuntime(17700): at com.OptimusApps.stayhealthy.Body.<init>(Body.java:31) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at com.OptimusApps.stayhealthy.MainActivity$DrawerItemClickListener.onItemClick(MainActivity.java:129) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at android.widget.AdapterView.performItemClick(AdapterView.java:292) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at android.widget.AbsListView.performItemClick(AbsListView.java:1060) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at android.widget.AbsListView$PerformClick.run(AbsListView.java:2516) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at android.widget.AbsListView$1.run(AbsListView.java:3170) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at android.os.Handler.handleCallback(Handler.java:605) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at android.os.Handler.dispatchMessage(Handler.java:92) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at android.os.Looper.loop(Looper.java:137) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at android.app.ActivityThread.main(ActivityThread.java:4575) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at java.lang.reflect.Method.invokeNative(Native Method) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at java.lang.reflect.Method.invoke(Method.java:511) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556) 
06-18 13:53:10.142: E/AndroidRuntime(17700): at dalvik.system.NativeStart.main(Native Method) 
+0

Logcat에 표시된 충돌 로그를 게시 할 수 있습니까? – petey

+0

@forgivegod 내 질문을 편집했습니다 – user222786

+0

Body.java 줄 31 (가능하게 생성자?)을 게시 할 수 있습니까 – JRomero

답변

1

당신의 다음 하나 android.support.v4.app.FragmentManager fragmentManager = getSupportFragmentManager(); :

android.support.v4.app.FragmentManager fragmentManager = getFragmentManager();

요에 대해 알려주세요. ur 진행 상황)