您的位置:首页 > 移动开发 > Android开发

Android自定义Spinner

2015-09-11 14:52 302 查看
Android Spinner有两种显示形式:一、下拉列表框,二、像Dialog那样的弹出框。Android系统我们提供的Spinner由于SDK版本以及Theme的不同,效果显示差别巨大,而且有的特别难看,所以我们可以自定义Spinner来实现我们的需求。

代码示例:

<Spinner
android:id="@+id/user_feedback_spinner"
android:layout_width="match_parent"
android:layout_height="41dp"
android:gravity="center"
android:spinnerMode="dropdown"//设置成下拉列表里样式
android:background="@drawable/spinner_bg_feedback"//Spinner的背景
android:popupBackground="@drawable/spinner_pop_bg_feedback"//下拉列表框的背景
android:dropDownVerticalOffset="0dp"//下拉列表里相对于Spinner的位移
/>


放在drawable文件夹下的spinner_bg_feedback.xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item >
<bitmap android:src="@drawable/sanjiao"//放在右侧的图片,不同的分辨率还需要不同的图片来适配
android:gravity="right"/>
</item>
<item android:drawable="@drawable/edittext_shape"></item>
</layer-list>


sanjiao.png

放在drawable文件夹下的spinner_pop_bg_feedback.xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/spinner_pop_bg_shape"></item>
</layer-list>
放在drawable文件夹下的spinner_pop_bg_shapge.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<stroke android:width="1dp"
android:color="#CCCCCC"/>
<corners android:radius="2dp"/>
<solid android:color="#f9f9f9"/>
</shape>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: