我需要三个选项卡,基本上可以在下面的列表视图中更改排序。我不需要查看寻呼机或任何太复杂的内容,但我只能找到带有查看寻呼机的示例。我正在使用appCompat和工具栏并扩展AppCompatActivity。
我已尝试过标签主机,但在运行该应用时它是不可见的
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@+id/tab1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" />
...
答案 0 :(得分:2)
听起来你只想要按钮,而不是标签。但是你希望它看起来像新的TabLayout和Application,你应该能够使用Design Support Libraries中提供的新TabLayout,但是你不需要连接动作来实际寻找任何东西而且可以使用它们来触发更改排序顺序。
您的活动布局将具有以下内容:
<android.support.design.widget.AppBarLayout
android:layout_height="wrap_content"
android:layout_width="match_parent">
<include layout="@layout/toolbar" />
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:visibility="gone"/>
</android.support.design.widget.AppBarLayout>
在您的活动中,您将需要以下内容:
mTabLayout = mActivity.getTabLayout();
if (mTabLayout != null) {
// Or manually set if you want
mTabLayout.setTabsFromPagerAdapter(getPagerAdapter());
mPageChangeListener = new TabLayout.TabLayoutOnPageChangeListener(mTabLayout);
// This is the bit that you will not want as that will change pages
// and you aren't actually changing pages, just listening
// Leaving these lines in just for reference on what you would do for paging
// mPager.addOnPageChangeListener(mPageChangeListener);
mPager.addOnPageChangeListener(this);
//mTabLayout.setOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(mPager) );
}
loadData();
然后您可以实现各种onPage *方法,您可以使用这些方法简单地触发排序顺序更改,而不是实际更改您的页面。