您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
安卓设置spinner边框及文字水平居中
发布时间:2021-07-23 13:50:45编辑:雪饮阅读()
其实是想实现类似h5那种select元素的效果,就是下拉框有四个边的边框。
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="0dip"
android:padding="0dip"
android:gravity="center"
android:layout_gravity="center"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="选择字体:"
/>
<Spinner
android:id="@+id/spinner1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:entries="@array/languages"
android:textAlignment="center"
android:layout_margin="0dip"
android:padding="0dip"
android:gravity="center"
android:background="@drawable/spinner_border"
/>
</LinearLayout>
实际上这样实现下来,右边箭头的实现比较棘手,因为它是利用背景遮罩的方式实现的,那么对于第二个item箭头,你有两种方法,一种是用一个图片,图片内容透明的背景,图片右边是箭头图案,或者其它利用背景遮罩来实现,这里暂时只是有种直觉应该能更优雅的办到,就比如获取原来的箭头然后利用背景遮罩实现。
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<!-- 第一组item:设置边框-->
<item>
<shape>
<!-- 设置边框线宽度和颜色-->
<stroke
android:width="0.5dp"
android:color="#000000" >
</stroke>
<!-- 设置圆角度数-->
<corners android:radius="0dp" />
<!-- 设置背景颜色-->
<solid android:color="#ffffff" />
<!-- padding:设置边距-->
<padding
android:bottom="5dp"
android:left="5dp"
android:right="5dp"
android:top="5dp" >
</padding>
</shape>
</item>
<!-- 第二组item:设置spinner箭头图片(替换默认箭头) -->
<!-- bitmap.gravity:设置spinner的箭头放置位置-->
<!--
bitmap.src:设置替换原spinner的箭头的图片资源
如:
android:src="@图片资源id"
-->
</layer-list>
关键字词:spinner,边框,水平居中