自定义标签指示图(Custom tab indicator view)

2019-09-23 07:34发布

我想重现此选项卡指标结构(屏幕是从新星发射器):一个下拉菜单,在右下角的箭头。

我对代码没有问题,但我不能重现这个样子。 我尝试这样做:

mBar.addTab(mBar.newTab().setText(ctx.getString(R.string.tab_actions)).setTabListener(this).setCustomView(R.layout.navigation_spinner));

其中毫巴是福尔摩斯的支持动作条。

这是我的布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:layout_width="match_parent"
    android:layout_height="match_parent" android:layout_margin="-10dp"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical">
    <Button android:id="@+id/button1" android:layout_width="match_parent"
        android:layout_height="match_parent" android:text="Button" />

</LinearLayout>

这是我的结果:

的问题是,在中央标签按钮不填充的标签指示器。 如何设置自定义视图完美地填补了指标无保证金或填充? 或者我有不同的方式,有一个像杉杉屏幕的结果接近这一点? 谢谢咨询

Answer 1:

你所要做的是非常复杂,并且将难以实现。

如果你想下拉菜单,你可以尝试这些:

菜单/ options.xml:

<item
    android:icon="@drawable/ic_menu_sort"
    android:showAsAction="ifRoom">
    <menu>
        <item
            android:id="@+id/menuSortNewest"
            android:title="Sort by newest" />
        <item
            android:id="@+id/menuSortRating"
            android:title="Sort by rating" />
    </menu>
</item>

第二个选项:

菜单/ options.xml:

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/menuSort"
        android:showAsAction="ifRoom"
        android:actionLayout="@layout/action_sort"  />
</menu>

布局/ action_sort.xml:

<Spinner xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/ic_menu_refresh"
    android:entries="@array/order" />

菜单资源文件- http://developer.android.com/guide/topics/resources/menu-resource.html



文章来源: Custom tab indicator view