ActionBar Sherlock ,操作栏选项卡和片段

Posted

技术标签:

【中文标题】ActionBar Sherlock ,操作栏选项卡和片段【英文标题】:ActionBar Sherlock , action bar tabs and fragments 【发布时间】:2012-06-06 09:55:34 【问题描述】:

我想为手机和平板电脑创建一个应用程序。我正在使用 actiobBar sherlock 库。我有一个扩展 SherlockFragmentActivity 的 MainActivity。 MainActivity 有一个仅包含选项卡的操作栏。 现在,我想为每个选项卡关联一个片段,这个片段应该有两个片段(列表片段和详细片段)。请建议我如何做到这一点。

【问题讨论】:

你有没有发现如何做到这一点? 【参考方案1】:

有几种方法,我只解释我的。

您可以使用任何导航、ViewPager、TabAdapter... 这个想法是添加一层片段

例如,您的 TabAdapter 带有视图寻呼机:

    private ViewPager           _viewPager;
    private TabsAdapter         _tabsAdapter;

   _tabsAdapter = new TabsAdapter(this, _viewPager);
   _tabsAdapter.addTab(bar.newTab().setCustomView(getTabIndicator(getString(R.string.tle_tab_home), R.drawable.ic_menu_home)), FragmentAccueil.class, null);
   _tabsAdapter.addTab(bar.newTab().setCustomView(getTabIndicator(getString(R.string.tle_tab_directory), R.drawable.tab_list_icon)), ContainerFragmentAnnuaire.class, null);

ContainerFragmentAnnuaire 是一个包含片段的布局

例如对于手机,您将创建此布局

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_
    android:layout_>
    <fragment class="com.example.android.ContainerFragmentAnnuaire"
              android:id="@+id/list_frag"
              android:layout_
              android:layout_/>
</FrameLayout>

对于平板电脑,您将创建这个

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="horizontal"
  android:layout_
  android:layout_
  android:id="@+id/frags">
  <fragment class="com.example.android.ContainerFragmentAnnuaire"
            android:id="@+id/list_frag"
            android:layout_
            android:layout_/>
  <fragment class="com.example.android.ContainerFragmentDetail"
            android:id="@+id/details_frag"
            android:layout_
            android:layout_ />
</LinearLayout>

只需在好文件夹中添加布局

res/layout/layout.xml 用于手机

res/layout-large/layout.xml 用于平板电脑

【讨论】:

以上是关于ActionBar Sherlock ,操作栏选项卡和片段的主要内容,如果未能解决你的问题,请参考以下文章

堆叠的 ActionBar 选项卡栏未填充父级

为啥actionbar sherlock的横向高度会发生变化?

Android - Sherlock ActionBar 长按图标菜单

透明操作栏:自定义标签颜色

带有标签的 Android 操作栏 Sherlock

Android ActionBar 自定义布局样式