改变EditText的焦点颜色?

4
我该如何在 EditText 获得焦点时改变其颜色?在模拟器中,当 EditText 获得焦点时它是蓝色的,我无法通过 XML 布局或编程的方式来改变它的颜色。我也不知道如何改变其他 View 的焦点颜色,比如按钮和下拉菜单。

它没有像我想的那样改变焦点,只是在焦点时更改行的图像。 - Narendra Pal
1个回答

1
yourEditText.setOnFocusChangeListener(new OnFocusChangeListener() {

                public void onFocusChange(View v, boolean hasFocus) {
                    if (v == yourEditText)
                    {
                        if (hasFocus)
                        {
                           yourEditText..setTextColor(Color.RED);

                        } 
                        else
                        { 

                        }
                    }

                }
            });

使用焦点监听器来实现(按钮等)

编辑 您需要使用XML并设置视图的背景来实现此功能。

   <?xml version="1.0" encoding="utf-8"?>
<selector 
xmlns:android="http://schemas.android.com/apk/res/android"
>
    <item 
      android:state_pressed="true"
      android:color="yourDesiredcolorcode" 
    /> <!-- pressed -->    
    <item 
       android:state_focused="true"
       android:color="yourDesiredcolorcode"
    /> <!-- focused -->    
    <item 
           android:color="yourDesiredcolorcode"
    /> <!-- default -->
</selector>

干杯


我指的是下划线的实际颜色,就像截图中的那样,不过还是谢谢你的帮助。 - Henry
他想要更改焦点颜色,而不是文本颜色。 - Obl Tobl

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接