Xamarin android改变图标颜色

时间:2017-03-08 10:06:18

标签: c# android xamarin xamarin.android

我在编辑文本字段中有一个可绘制的图标。我想改变图标的​​颜色。我目前使用的是可绘制的色调,在Xamarin工作室设计师中工作得很好,但它并没有显示测试设备的变化。

我尝试过从软糖到牛轧糖的所有设备仍然没有运气,我可能做错了什么?

1 个答案:

答案 0 :(得分:2)

EditText不包含色调属性,但是imageview有。如果要更改EditText图标的颜色,可以先更改可绘制色调,然后使用drawable设置EditText背景:

  EditText et2 = FindViewById<EditText>(Resource.Id.edittext2);
  Drawable myicon = GetDrawable(Resource.Drawable.Icon);
  myicon.SetTint(Color.Red);
  et2.Background = myicon;

这是我的布局文件:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <EditText
        android:id="@+id/edittext"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:background="@drawable/icon" />
    <EditText
        android:id="@+id/edittext2"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:background="@drawable/icon" />
    <ImageView
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:src="@drawable/icon"
        android:tint="#330000FF" />
</LinearLayout>

您可以看到第二个EditText和imageview图标色调已更改:

enter image description here