欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

android spinner修改 样式

程序员文章站 2022-07-15 12:45:21
...

做到一种样式  android 的spinner本身背景样式要黑色的 ,而spinner里的字体也是黑色的 ,spinner 控件的属性里设置TextColor没用  网上找了下  需要定义xml 文件来定义样式   和自定义按钮控件类似;

 

1,首先定义spinenr本身背景的样式:

 

 

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
	<item android:state_pressed="true" android:drawable="@drawable/droplist_down" />
	<item android:state_focused="true" android:drawable="@drawable/droplist_focus" />
	<item android:drawable="@drawable/droplist" />
</selector>
 

 

2,在xml里引用

 

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
	 <Spinner 
        android:id="@+id/glucosespin"
		android:layout_marginLeft="20dp"
		android:background="@drawable/drop_list"
		android:layout_width="95dp"
		android:layout_height="20dp"
		android:layout_centerHorizontal="true"/>
</LinearLayout>
 

 

这样spinner背景就变成了自定义的黑色了

 

3,定义spinner里的字体样式

 

 

<?xml version="1.0" encoding="utf-8"?>

 <TextView xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@android:id/text1"
     style="?android:attr/spinnerDropDownItemStyle"
     android:singleLine="true"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
     android:ellipsize="marquee"
     android:layout_gravity="center_vertical"
     android:textColor="#84DB18"
     android:textSize="12sp"/>

 4,定义弹出的选择样式

 

 

<?xml version="1.0" encoding="utf-8"?>

 <CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@android:id/text1"
     style="?android:attr/spinnerDropDownItemStyle"
     android:singleLine="true"
     android:layout_width="fill_parent"
     android:layout_height="?android:attr/listPreferredItemHeight"
     android:ellipsize="marquee"
     android:textColor="#84DB18"
     android:background="#424142"/>
 

这样,一个spinner就完全变身了额。