【问题标题】:How to change the default disabled EditText's style?如何更改默认禁用的 EditText 的样式?
【发布时间】:2013-04-26 13:37:09
【问题描述】:

使用 EditText enabled="false" 时看起来不太好。我怎样才能改变它 自动为所有控件?

我已添加此图片以供参考。

有人可以帮助我吗?谢谢。

【问题讨论】:

  • 您是否将android:background="...." 属性设置为EditText
  • 如果我在 style.xml 中更改 android:background,它会更改所有的 EditText,而不仅仅是禁用。我想知道我是否可以更改default-disabled-EditText样式,而不是一一更改。

标签: android styles android-edittext default


【解决方案1】:

在drawables中创建一个自定义选择器并将其设置为

<EditText android:textColor="@drawable/edit_text_selector" />

1) 在“colors.xml”中定义启用和禁用状态的颜色:

<color name="enabled_color">#F7FE2E</color>
<color name="disabled_color">#000000</color>

2) 在“drawable/edit_text_selector.xml”中:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_enabled="false" android:color="@color/disabled_color"/>
    <item android:color="@color/enabled_color"/>
</selector>

3) 在您的 layout.xml 中:

<EditText
    android:id="@+id/customEditText"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:enabled="false"
    android:text="Hello!"
    android:textColor="@drawable/edit_text_selector" />

【讨论】:

  • 很棒的方法!。非常感谢!
  • 我知道它很旧,但@color/normal_color 应该是@color/enabled_color
【解决方案2】:

在颜色文件中定义你的颜色:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_enabled="false" android:color="@color/disabled_color" />
    <item android:color="@color/normal_color"/>
</selector>

在布局中:

<EditText
    android:text="whatever text you want"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="@drawable/example" />
</EditText>

【讨论】:

  • 我需要两种状态,启用和禁用。如果我尝试使用您的代码(已改编),我的 edittext 将保持不可见(因为它没有获得正确的参数。)并且日志向我显示此错误: tag requires a 'drawable' attribute or child tag defined a drawable
  • 我怎样才能以编程方式做到这一点..??
  • 选择器必须在drawable目录中定义(不是color)。
  • @giraffe.guru 文本颜色选择器必须在color 文件夹下定义
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-21
  • 2023-03-30
  • 2020-10-02
  • 2021-01-19
  • 2017-05-02
相关资源
最近更新 更多