`
348725767
  • 浏览: 103976 次
  • 性别: Icon_minigender_1
  • 来自: 温州
社区版块
存档分类
最新评论

android spinner修改 样式

阅读更多

做到一种样式  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就完全变身了额。

 

分享到:
评论
8 楼 q316085319 2014-05-26  
www.glmei.cn
7 楼 q316085319 2014-05-26  
6 楼 简屋_l 2013-06-19  
请问下楼主怎么改变弹出窗口的整体背景色  不是item背景
5 楼 348725767 2012-08-16  
wanghaoming100 写道
读了你的源代码,对我理解spinner很有帮助。有一些问题问楼主, 就是你的drop_list_hover.xml里定义的样式 应该是完全没有用到。 在实例化adapter之后
有调用了 adapter.setDropDownViewResource(R.drawable.drop_list_ys); 这个方法
它应该会覆盖之前定义好的样式吧??

另外建议楼主把droplist.png换成9patch格式,这样就可以让按钮随着文字的长度改变长度。

是的
4 楼 wanghaoming100 2012-08-16  
读了你的源代码,对我理解spinner很有帮助。有一些问题问楼主, 就是你的drop_list_hover.xml里定义的样式 应该是完全没有用到。 在实例化adapter之后
有调用了 adapter.setDropDownViewResource(R.drawable.drop_list_ys); 这个方法
它应该会覆盖之前定义好的样式吧??

另外建议楼主把droplist.png换成9patch格式,这样就可以让按钮随着文字的长度改变长度。
3 楼 guolong2008 2012-07-10  
不错啊,学习了
2 楼 sunnyting 2012-06-08  
感谢~!学习了~
1 楼 abc670454997 2012-03-07  
很不错,LZ的spinner很漂亮。。iteye竟然屏蔽xiexielouzhu...无语

相关推荐

    Android 实例讲解 Spinner样式修改

    对于适配器加载自定义的xml布局文件,修改该Spinner样式较简单,就是在定义的xml布局文件中修改显示的样式就可以。但对于加载android自带的xml布局文件,有时会出现不是项目所需要的效果。主要问题有下拉几个: 1....

    Android修改系统自带Spinner字体大小和颜色demo

    由于项目需求,最近在研究Spinner,发现系统自带的spinner的字体大小和颜色没法修改,于是查找资料实现修改系统自带Spinner字体大小和颜色的功能;并且该demo还实现了自定义Spinner样式以及实现hint的效果,本人第一...

    修改spinner字体大小及颜色,还有列表样式

    修改spinner字体大小及颜色,及点击下拉列侯弹出的列表样式

    Android Spinner列表选择框的应用

    Android Spinner列表选择框的应用 Spinner 是 Android 的列表选择框,不过 spinner 并不需要显示下拉列表,而是相当于弹出一个菜单供用户选择。 Spinner 属性: ● android:spinnerMode:列表显示的模式,有两个...

    Android编程入门很简单.(清华出版.王勇).part1

    5.2.14实例——动态修改Spinner项 5.2.15 使用进度条——ProgressBar 5.2.16实例——动态修改进度条 5.2.17使用拖动条——SeekBar 5.2.1 8实例——简单使用SeekBar 5.2.19使用图片视图——ImageView 5.2.20实例——...

    Android.UI基础教程]

    4.2.1ImageView和资源 4.2.2 位J图 4.2.3 Drawable 4.3 创建地图和展示网站 4.3.1 MapView4.3.2 WebView 4.4 结束语 第5章 可复用UI 5.1 抽象布局 5.1.1 标签 5.1.2 标签 5.1.3ViewStub 5.2 抽象样式和主题 5.2.1 ...

    《Google Android SDK开发范例大全(第3版)》.pdf

    8.18 通过web api动态更改手机spinner控件 587 8.19 网络语音搜索 590 8.20 网络下载过程中显示加载中 593 8.21 快照webview加载的网页画面 596 8.22 网页的放大与缩小 598 8.23 webview网页载入中...

    Android开发应用实战详解源代码

    3.6 样式修饰处理 3.7 按钮事件响应 3.8 页面间的转换 3.9 activity调用 3.10 多个activity间的数据传递 3.11 将数据返回到前一个activity 3.12 对话框交互处理 3.13 文字颜色置换 3.14 文字字体设置 3.15 拖动相片...

    Android编程入门很简单.(清华出版.王勇).part2

    5.2.14实例——动态修改Spinner项 5.2.15 使用进度条——ProgressBar 5.2.16实例——动态修改进度条 5.2.17使用拖动条——SeekBar 5.2.1 8实例——简单使用SeekBar 5.2.19使用图片视图——ImageView 5.2.20实例——...

    精通ANDROID 3(中文版)1/2

    6.4.3 Spinner控件  6.4.4 Gallery控件  6.4.5 创建自定义适配器  6.4.6 Android中的其他控件  6.5 样式和主题  6.5.1 使用样式  6.5.2 使用主题  6.6 布局管理器  6.6.1 LinearLayout布局管理器 ...

    Google Android SDK开发范例大全(PDF高清完整版1)(4-1)

    3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 手机页面的转换——setContentView的应用 3.9 调用另一个Activity——Intent对象的使用 3.10 不同Activity之间的数据传递——...

    Google Android SDK开发范例大全(PDF完整版4)(4-4)

    3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 手机页面的转换——setContentView的应用 3.9 调用另一个Activity——Intent对象的使用 3.10 不同Activity之间的数据传递——...

    Google Android SDK开发范例大全(第3版) 1/5

    8.18 通过Web API动态更改手机Spinner控件 8.19 网络语音搜索 8.20 网络下载过程中显示加载中 8.21 快照WebView加载的网页画面 8.22 网页的放大与缩小 8.23 WebView网页载入中、载入完成样版 8.24 通过内嵌Flash ...

    Google Android SDK开发范例大全(第3版) 4/5

    8.18 通过Web API动态更改手机Spinner控件 8.19 网络语音搜索 8.20 网络下载过程中显示加载中 8.21 快照WebView加载的网页画面 8.22 网页的放大与缩小 8.23 WebView网页载入中、载入完成样版 8.24 通过内嵌Flash ...

    疯狂Android讲义源码

     2.4.2 Spinner的功能和用法 80  2.4.3 日期、时间选择器(DatePicker  和TimePicker)的功能和用法 83  2.4.4 进度条(ProgressBar)的  功能和用法 85  2.4.5 拖动条(SeekBar)的功能和  用法 90  2.4.6 ...

    Google Android SDK开发范例大全(第3版) 3/5

    8.18 通过Web API动态更改手机Spinner控件 8.19 网络语音搜索 8.20 网络下载过程中显示加载中 8.21 快照WebView加载的网页画面 8.22 网页的放大与缩小 8.23 WebView网页载入中、载入完成样版 8.24 通过内嵌Flash ...

    Google Android SDK开发范例大全(第3版) 5/5

    8.18 通过Web API动态更改手机Spinner控件 8.19 网络语音搜索 8.20 网络下载过程中显示加载中 8.21 快照WebView加载的网页画面 8.22 网页的放大与缩小 8.23 WebView网页载入中、载入完成样版 8.24 通过内嵌Flash ...

    Google Android SDK开发范例大全(PDF高清完整版3)(4-3)

    3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 手机页面的转换——setContentView的应用 3.9 调用另一个Activity——Intent对象的使用 3.10 不同Activity之间的数据传递——...

Global site tag (gtag.js) - Google Analytics