Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8646645
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 12, 20262026-06-12T12:52:01+00:00 2026-06-12T12:52:01+00:00

How do you detach or remove FragmentTransaction? Can anyone show me an example on

  • 0

How do you detach or remove FragmentTransaction? Can anyone show me an example on how to detach it. I’ve tried detach and remove. Its still not working. Please help me. Note that I’m using asynctask in my codes.

    @Override
        public void onActivityCreated(Bundle savedInstanceState) {

                new loadListView().execute();

            super.onActivityCreated(savedInstanceState);
        }

        public class loadListView extends AsyncTask<Integer, String, String> {

            @Override
            protected void onPreExecute() {
                super.onPreExecute();
            }

            @Override
            protected String doInBackground(Integer... args) {
                ............
                }   


            @Override
            protected void onPostExecute(String args) {

                if (getActivity() != null) {
                adapter=new MainPageLazyAdapter(getActivity(), menuItems);
                setListAdapter(adapter);



             }
        }


        @Override
    public void onTabSelected(Tab tab, FragmentTransaction ft) {



    FragmentManager fragmentManager = getFragmentManager();
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        fragmentTransaction.add(android.R.id.content, this);
        fragmentTransaction.attach(this);
        fragmentTransaction.commit();
    }

    @Override
    public void onTabUnselected(Tab tab, FragmentTransaction ft) {

        FragmentManager fragmentManager = getFragmentManager();
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        fragmentTransaction.detach(this);
        fragmentTransaction.commit();



    }

    @Override
    public void onTabReselected(Tab tab, FragmentTransaction ft) {

    }


}

LOGCAT :

10-09 14:49:42.305: E/AndroidRuntime(5731): FATAL EXCEPTION: main
10-09 14:49:42.305: E/AndroidRuntime(5731): java.lang.RuntimeException: Unable to start activity ComponentInfo{in.wptrafficanalyzer.actionbarsherlocknavtab/in.wptrafficanalyzer.actionbarsherlocknavtab.MainActivity}: java.lang.NullPointerException
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1970)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1995)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.app.ActivityThread.access$600(ActivityThread.java:127)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1161)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.os.Looper.loop(Looper.java:137)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.app.ActivityThread.main(ActivityThread.java:4512)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at java.lang.reflect.Method.invokeNative(Native Method)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at java.lang.reflect.Method.invoke(Method.java:511)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:982)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:749)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at dalvik.system.NativeStart.main(Native Method)
10-09 14:49:42.305: E/AndroidRuntime(5731): Caused by: java.lang.NullPointerException
10-09 14:49:42.305: E/AndroidRuntime(5731):     at in.wptrafficanalyzer.actionbarsherlocknavtab.AndroidFragment.onTabSelected(AndroidFragment.java:170)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at com.actionbarsherlock.internal.app.ActionBarWrapper$TabWrapper.onTabSelected(ActionBarWrapper.java:344)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at com.android.internal.app.ActionBarImpl.selectTab(ActionBarImpl.java:512)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at com.android.internal.app.ActionBarImpl.addTab(ActionBarImpl.java:441)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at com.android.internal.app.ActionBarImpl.addTab(ActionBarImpl.java:427)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at com.actionbarsherlock.internal.app.ActionBarWrapper.addTab(ActionBarWrapper.java:377)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at in.wptrafficanalyzer.actionbarsherlocknavtab.MainActivity.onCreate(MainActivity.java:24)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.app.Activity.performCreate(Activity.java:4465)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1052)
10-09 14:49:42.305: E/AndroidRuntime(5731):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
10-09 14:49:42.305: E/AndroidRuntime(5731):     ... 11 more
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-12T12:52:02+00:00Added an answer on June 12, 2026 at 12:52 pm

    This is wrong, see my update.

    You need to call commit() on the FragmentTransaction after you add or remove fragments.

    Example:

    FragmentManager fragmentManager = getFragmentManager();
    FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
    fragmentTransaction.add(android.R.id.content, yourFragment);
    fragmentTransaction.commit();
    

    UPDATE

    According to the doc, you have not to commit the transaction, the system does it for you: http://developer.android.com/guide/topics/ui/actionbar.html

    Here is a minimalist example that works well. Your activity has to extend SherlockFragmentActivity (or FragmentActivity). The activity implements TabListener.

    MainActivity:

    public class MainActivity extends SherlockFragmentActivity implements TabListener
    {
        private ActionBar.Tab homeTab;
        private ActionBar.Tab tagsTab;
        private FragOne fragOne;
        private FragTwo fragTwo;
    
    
        @Override
        public void onCreate(Bundle b)
        {
            super.onCreate(b);
    
            ActionBar bar = getSupportActionBar();
            bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
    
            homeTab = bar.newTab().setText("Home");
            tagsTab = bar.newTab().setText("Tags");
    
            homeTab.setTabListener(this);
            tagsTab.setTabListener(this);
    
            fragOne = FragOne.getInstance();
            fragTwo = FragTwo.getInstance();
    
            bar.addTab(homeTab);
            bar.addTab(tagsTab);
        }
    
        @Override
        public void onTabSelected(Tab tab, FragmentTransaction ft) {
            if (tab == homeTab)
                ft.replace(android.R.id.content, fragOne);
            else
                ft.replace(android.R.id.content, fragTwo);
        }
    
        @Override
        public void onTabUnselected(Tab tab, FragmentTransaction ft) {}
    
        @Override
        public void onTabReselected(Tab tab, FragmentTransaction ft) {}
    }
    

    FragOne (the other fragment, FragTwo, has just a different layout):

    public class FragOne extends SherlockFragment
    {
        private static FragOne instance;
    
    
        public static FragOne getInstance()
        {
            if (instance == null)
                instance = new FragOne();
            return instance;
        }
    
        private FragOne() {}
    
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            return inflater.inflate(R.layout.frag_one_layout, container, false);
        }
    }
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

How can I remove one entity from its parent and add it to another
How can I remove the window.getSelection().anchorNode from a range? I have tried the following...
I can run this command in SqlManager to detach the db ALTER DATABASE mydb
I'm trying to remove an area of my website with detach because I have
I am trying to extract text from body downloaded via ajax. I can not
How can I make shwOpts.show(fast); to act when removeHighlight() is done? I thought if
Is the usage of e = elem.clone(true); elem.remove(); Identical to e = elem.detach(); If
In the Android docs for a FragmentTransaction I noticed two very similar methods: detach
I try to do the following: Detach the database Copy files to a temporary
I would like to be able to detach my program from the console much

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.