android改变下拉框字体颜色,android-在XML中更改Spinner下拉箭头的颜色

有三种方法可以实现这一目标。

1.通过代码:

在您的xml中,确保您的微调器有一个ID。 假设我们有一个ID为“ spinner”的微调器。

在代码中,在onCreate()中添加以下内容:

Spinner spinner = (Spinner) findViewById(R.id.spinner);

spinner.getBackground().setColorFilter(getResources().getColor(R.color.red), PorterDuff.Mode.SRC_ATOP);

红色是您在values文件夹中colors.xml中定义的颜色。

2.通过xml:

对于API 21+:

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:backgroundTint="@color/red" />

或者,如果您使用支持库,则可以使用:

android:layout_width="wrap_content"

android:layout_height="wrap_content"

app:backgroundTint="@color/red" />

3.通过绘画:

您可以使用此在线工具:[http://android-holo-colors.com]

这将为您希望使用首选颜色的任何视图生成自定义可绘制对象。 确保选择微调器,然后下载资源。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android Spinner 是一个下菜单控件,可以在其选择一个选项。如果我们希望 Spinner 显示的是选项的文字,而不是默认的 toString() 方法返回的字符串,可以通过自定义适配器的方式来实现。 首先,我们需要自定义一个适配器,继承 ArrayAdapter,重写 getView() 方法,在其设置显示的文字。例如,以下代码创建了一个自定义适配器,将 Spinner 的选项显示为选项的名称: ``` public class MySpinnerAdapter extends ArrayAdapter<Item> { private List<Item> itemList; public MySpinnerAdapter(Context context, int resource, List<Item> itemList) { super(context, resource, itemList); this.itemList = itemList; } @Override public View getView(int position, View convertView, ViewGroup parent) { TextView textView = (TextView) super.getView(position, convertView, parent); textView.setText(itemList.get(position).getName()); return textView; } @Override public View getDropDownView(int position, View convertView, ViewGroup parent) { TextView textView = (TextView) super.getDropDownView(position, convertView, parent); textView.setText(itemList.get(position).getName()); return textView; } } ``` 在这个适配器,我们重写了 getView() 和 getDropDownView() 方法。getView() 方法用于设置 Spinner 的默认显示文字,getDropDownView() 方法用于设置下列表每个选项的显示文字。在这两个方法,我们通过 `textView.setText(itemList.get(position).getName())` 来设置显示的文字,其 getName() 是我们自定义的 Item 类的一个方法,用于获取选项的名称。 接下来,我们将自定义的适配器设置为 Spinner 的适配器,即可实现显示选项名称的效果。例如,以下代码创建了一个包含三个 Item 对象的列表,并将其作为适配器设置给 Spinner: ``` List<Item> itemList = new ArrayList<>(); itemList.add(new Item("item1")); itemList.add(new Item("item2")); itemList.add(new Item("item3")); MySpinnerAdapter adapter = new MySpinnerAdapter(this, android.R.layout.simple_spinner_item, itemList); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); Spinner spinner = findViewById(R.id.spinner); spinner.setAdapter(adapter); ``` 在这段代码,我们创建了一个包含三个 Item 对象的列表,然后将其作为适配器设置给 Spinner。通过 `adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)` 方法,我们设置了下列表的布局,即系统自带的简单布局。最后,通过 `spinner.setAdapter(adapter)` 方法将适配器设置为 Spinner 的适配器,即可实现显示选项名称的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值