安卓操作栏是什么?

3
我在我的Android 4.0.3应用程序中有一个Action Bar。每个选项卡都有一些按钮(一种继续)会更改片段但不更改选项卡。我按照官方开发人员指南上的http://developer.android.com,但它没有起作用。
这就是我想要的: enter image description here 使用Action Bar Sherlock可以实现这种交互吗?

如果我理解正确,您想在当前选项卡中进行导航?由于ViewPager使用Adapter,我认为没有简单的方法可以实现:s ActionBarSherlock与官方ActionBar相同,只是与Android的早期版本兼容。您不能只是通过单击“上一页”按钮打开新活动吗? - Plumillon Forge
是的,这正是我需要的!我也想使用Activity,但不幸的是我不能,我必须保留该栏。 - user1738741
你能发布你的代码吗?ViewPager和ViewPager适配器?解决方案在这里 :) - Plumillon Forge
这是我的代码 :) http://stackoverflow.com/questions/12843944/actionbar-and-fragments-on-ics-4-0-3 - user1738741
1个回答

2

我相信你可以通过适当地重写选项卡回调类方法onTabSelected(Tab tab, FragmentTransaction ft)来指定所需的选项卡行为。它应该看起来像:

        public void onTabSelected(Tab tab, FragmentTransaction ft) {
        // Check if the fragment is already initialized
        if (mFragment == null) {
            // If not, instantiate and add it to the activity
            mFragment = Fragment.instantiate(mActivity, mClass.getName());
            ft.add(R.id.realtabcontent, mFragment, mTag);
        } else {
            //Here we look if current fragment aren't default fragment for this tab
            //Remember that detached fragments are still managed by system, so manage it the way u need
            // If it exists, simply attach it in order to show it
            // ft.attach(mFragment);
            if (mFragment.getTag().equals("defaultFragment"))
                ft.show(mFragment);
            else {
                ft.detach(mFragment);

                mFragment = fragmentManager.findFragmentByTag("defaultFragment");
                if (mFragment == null)
                    mFragment = Fragment.instantiate(mActivity, mClass.getName());
                ft.add(R.id.realtabcontent, mFragment, "defaultFragment");
            }
        }
    }

我不明白你的mFragment是导航片段还是选项卡片段?这是我的代码http://stackoverflow.com/questions/12843944/actionbar-and-fragments-on-ics-4-0-3 - user1738741

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接