I add and remove a fragment dynamically in android when deleting a fragment. I get this exception, can anyone tell me how to remove the fragment?
12-09 15:00:16.363: ERROR/AndroidRuntime(673): FATAL EXCEPTION: main 12-09 15:00:16.363: ERROR/AndroidRuntime(673): java.lang.IllegalStateException: commit already called 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at android.app.BackStackRecord.commitInternal(BackStackRecord.java:499) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at android.app.BackStackRecord.commit(BackStackRecord.java:491) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at com.gcm.fragment.GcmFragmentActivity.onClick(GcmFragmentActivity.java:50) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at android.view.View.performClick(View.java:3110) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at android.view.View$PerformClick.run(View.java:11928) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at android.os.Handler.handleCallback(Handler.java:587) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at android.os.Handler.dispatchMessage(Handler.java:92) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at android.os.Looper.loop(Looper.java:132) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at android.app.ActivityThread.main(ActivityThread.java:4025) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at java.lang.reflect.Method.invokeNative(Native Method) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at java.lang.reflect.Method.invoke(Method.java:491) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599) 12-09 15:00:16.363: ERROR/AndroidRuntime(673): at dalvik.system.NativeStart.main(Native Method)
My code is below
package com.gcm.fragment; import android.app.Activity; import android.app.Fragment; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.TextView; public class GcmFragmentActivity extends Activity implements OnClickListener { TextView txtIhaveIdea=null; boolean subMenu=false; Fragment fragOne = new SubFragment(); FragmentManager fm = getFragmentManager(); FragmentTransaction ft = fm.beginTransaction(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); txtIhaveIdea=(TextView)findViewById(R.id.txtIhaveAnIdea); txtIhaveIdea.setOnClickListener(this); ; } @Override public void onClick(View v) {
Can anyone tell me how to fix the problem.
thanks
source share