1

How can I hide SearchFragment and display ChatFragment, without remove() in ViewPager? I had no issues with creating new instance everytime, but I don't want onDestroy() to have place, since i will be switching these 2 views very frequently. I want to create them once and have the ability to show/hide one for another.

My code is making two views to be seen in fragment_search(id cointainer)at once, then just crashes.

I was thinking about creating both Fragments at start, and then just manipulate them by attach and detach, but I can't really figure this out since ViewPager doesn't make it easier

 public Fragment getItem(int position) {
        switch (position) {
            case 0:
                if (fragment1 == null)
                {
                    fragment1 = SearchFragment.newInstance(new SearchFragment.MyListener() {
                        @Override
                        public void onChatFound() {

                            // Dont want to remove fragment, just hide this view || fm.beginTransaction().remove(fragment1).commit();
                            Fragment chatTag = fm.findFragmentByTag("ChatTag");
                            if (chatTag == null)
                            {
                                chatFragment = ChatFragment.newInstance();
                                fm.beginTransaction().add(R.id.fragment_search, chatFragment, "ChatTag").commit();
                            }
                            fragment1 = chatTag;
                            notifyDataSetChanged();
                        }
                    });
                }

                return fragment1;
ashaneen
  • 137
  • 1
  • 15

0 Answers0