spinner添加分割线和改变右侧箭头

spinner添加分割线和改变右侧箭头

默认的spinner是没有分割线的,时间仓促就直接进入主题了。

1.首先说添加分割线
第一步:在style.xml中定义一个style ,应该不用解释每个的意思吧,看单词也能理解。
 <style name="XSpinnerStyle" parent="android:Widget.ListView.DropDown">
        <!-- 分隔线颜色 -->
        <item name="android:divider">#DFDFDF</item>
        <item name="android:dividerHeight">1dp</item>
    </style>
第二步:在AppTheme中吧自定义的style添加进来,注意是android:dropDownListViewStyle
<!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:dropDownListViewStyle">@style/XSpinnerStyle</item>

    </style>

只需要两部就可以为spinner添加分割线,是不是很简单呢?

2.改变箭头
1.自定义style
<style name="spinner_style" parent="Base.Widget.AppCompat.Spinner">
        <item name="android:background">@drawable/spinner_raow_selector</item>
    </style>
2.创建spinner_raow_selector,代码如下:
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_window_focused="true">
        <layer-list>
            <item>
                <shape>
                    <padding android:right="10dp"/>
                </shape>
            </item>
            <item>
                <bitmap android:gravity="center_vertical|right" android:src="@drawable/ic_pack_up" />
            </item>
        </layer-list>
    </item>

    <item>
        <layer-list>
            <item>
                <shape>
                    <padding android:right="10dp"/>
                </shape>
            </item>
            <item>
                <bitmap android:gravity="center_vertical|right" android:src="@drawable/ic_pack_down" />
            </item>
        </layer-list>
    </item>
</selector>
3.在spinner中引用
 <android.support.v7.widget.AppCompatSpinner
                android:id="@+id/AppCompatSpinner"
                style="@style/spinner_style"//这里
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:dropDownVerticalOffset="40dp"
                android:spinnerMode="dropdown"
                android:textColorHint="#000000"
                android:textSize="12sp" />

oK啦,两张图样式如下
这里写图片描述

猜你喜欢

转载自blog.csdn.net/caobin_study/article/details/79805029
今日推荐