android – 在fragmentTabs之间切换,给出意想不到的结果

前端之家收集整理的这篇文章主要介绍了android – 在fragmentTabs之间切换,给出意想不到的结果前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我试图在http://developer.android.com/resources/samples/Support4Demos/src/com/example/android/supportv4/app/FragmentTabs.html年实现FragmentTabs.一切顺利,直到我这样做:

我从一个标签开始了许多不同的片段,如:

TAB1 – >片段1 —> fragment2 —> fragment3

TAB2

但是当我切换到tab2并再次回到tab1时,我得到的是fragment1屏幕而不是fragment3(即我在第一个标签中有3个片段,而我在第3个片段上,在切换到第二个标签后我再来到第一个标签上,我是被带到第一个片段而不是第三个)..任何人都可以告诉可能是什么概率?

        @Override
        public void onTabChanged(String tabId) {
            TabInfo newTab = mTabs.get(tabId);
            if (mLastTab != newTab) {
                FragmentTransaction ft = mActivity.getSupportFragmentManager().beginTransaction();
                if (mLastTab != null) {
                    if (mLastTab.fragment != null) {
                        ft.detach(mLastTab.fragment);
                    }
                }
                if (newTab != null) {
                    if (newTab.fragment == null) {
                        newTab.fragment = Fragment.instantiate(mActivity,newTab.clss.getName(),newTab.args);
                        ft.add(mContainerId,newTab.fragment,newTab.tag);
                    } else {
                        ft.attach(newTab.fragment);
                    }
                }

                mLastTab = newTab;
                ft.commit();
                mActivity.getSupportFragmentManager().executePendingTransactions();
            }
        }

当我评论attach()和detatch()时,我得到了这个:

最佳答案
没有更多的细节,很难说出具体的错误.但是,我可以从个人经验中说,当我第一次实现片段选项卡时,在找到有用的东西之前,我经历了很多糟糕的教程.最终对我有用的教程在这里:
http://thepseudocoder.wordpress.com/2011/10/04/android-tabs-the-fragment-way/

作为奖励,还有一些Github源代码
https://github.com/mitchwongho/Andy/tree/master/Andy/src/com/andy/fragments/tabs

猜你在找的Android相关文章