Android 修改spinner 字体颜色 样式的方法
spinner 是Android自带的一个控件使用也很简单 可以用来实现下拉效果 也可以实现弹窗效果 具体实现可以的实现效果是下拉还是弹出 可以在spinner XML中android:spinnerMode="dropdown" 属性设置即可
今天我要写的是怎么去改变spinner的字体样式 在 xml 的属性中设置 字体颜色之类的属性完全没有效
为了解决这问题我们先来看spinner的使用方法
首先是需要有个 数据源 这个不提 接下来是要有个adapter
adapter在Android里的用处很多了 我们就来看看这个adapter
new ArrayAdapter<String>(mContext, android.R.layout.simple_spinner_item, numbers);
需要传入三个参数 第二参数就是关键所在 看看这个布局的源码 :
<?xml version="1.0" encoding="utf-8"?>
<!--
/* //device/apps/common/assets/res/any/layout/simple_spinner_item.xml
**
** Copyright 2006, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
style="?android:attr/spinnerItemStyle"
android:singleLine="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="marquee"
android:textAlignment="inherit"/>
其实就是一个textview
问题来了 只要我们在adapter里面传入自己定义的textview 就可以解决问题了
在自定义的textview布局xml中设置我们想要的属性就可以显示到spinner 上了
更多相关文章
- javascript实现拖动层效果代码(许愿墙)
- Java记录 -88- 利用反射机制调用对象的私有方法和属性
- spring data RedisTemplate无效果
- 包含带标记的值的XML属性文件
- JAVA中的反射只获取属性的get方法
- 如何在Spring中读取具有相同键的多个属性?
- 为泛型类的泛型方法的属性赋值 - Java
- 如何在Spring Data(JPA)派生查询中按多个属性排序?