Android 具有可切换视图的自定义选项卡设计

Android 具有可切换视图的自定义选项卡设计,android,android-fragments,android-fragmentactivity,android-tabs,Android,Android Fragments,Android Fragmentactivity,Android Tabs,我已经学习了一个关于如何创建标签的教程,您可以使用片段在标签之间滑动,但是现在我已经完成了教程,我需要在标签上实现自定义设计。我可以这样做,因为教程中没有解释 *这是创建自定义选项卡的布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/tabsLayout" a

我已经学习了一个关于如何创建标签的教程,您可以使用片段在标签之间滑动,但是现在我已经完成了教程,我需要在标签上实现自定义设计。我可以这样做,因为教程中没有解释


*这是创建自定义选项卡的布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tabsLayout" android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:padding="10dip" android:gravity="center" android:orientation="vertical">

    <TextView android:id="@+id/tabsText" android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:text="Title"
        android:textSize="15dip" />
</LinearLayout>

自定义视图的外观

tabs_bg.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tabsLayout" android:layout_width="fill_parent"
    android:layout_height="fill_parent" android:background="@drawable/tab_bg_selector"
    android:padding="10dip" android:gravity="center" android:orientation="vertical">

    <TextView android:id="@+id/tabsText" android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:text="Title"
        android:textSize="15dip" android:textColor="@drawable/tab_text_selector" />
</LinearLayout>

同样设置文本和背景选择器。将其用作新布局

有关更多详细信息,请参阅。

在drawble文件夹中创建xml(表1)

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- When selected, use grey -->
<item android:drawable="@drawable/videos_gray"
  android:state_selected="true" />
<!-- When not selected, use white-->
<item android:drawable="@drawable/videos_white" />
// Create an actionbar
ActionBar actionBar = getActionBar();

// Hide Actionbar Icon
actionBar.setDisplayShowHomeEnabled(false);

// Hide Actionbar Title
actionBar.setDisplayShowTitleEnabled(false);

// Create Actionbar Tabs
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

// Create first Tab
tab = actionBar.newTab().setTabListener(new FragmentTab1());
// Create your own custom icon
tab.setIcon(R.drawable.tab1);
actionBar.addTab(tab);

// Create Second Tab
tab = actionBar.newTab().setTabListener(new FragmentTab2());
// Set Tab Title
tab.setText("Tab2");
actionBar.addTab(tab);

// Create Third Tab
tab = actionBar.newTab().setTabListener(new FragmentTab3());
// Set Tab Title
tab.setText("Tab3");
actionBar.addTab(tab);