【问题标题】:How to remove the Default orange Highlight Effect for EditText programmatically?如何以编程方式删除 EditText 的默认橙色突出显示效果?
【发布时间】:2013-02-08 15:58:47
【问题描述】:

我使用选择器来设置 EditText 的样式。当我双击我的 EditText 时,我想摆脱橙色。我用这个:

states.addState(new int[] {R.attr.textColorHighlight}, getResources().getDrawable(R.color.transparent));

但这并没有什么区别!有没有人知道为什么? 有趣的是,这部分代码运行良好:

states.addState(new int[] {R.attr.state_focused}, getResources().getDrawable(R.color.transparent));

但我不想改变状态,当重点!

【问题讨论】:

  • 我认为颜色取决于您的 OEM ROM。
  • 你的意思是没有办法以编程方式更改它?
  • 为您的 EditText 创建自定义样式并使其看起来像您想要的那样。
  • @Android-Developer:但我认为我已经使用 states.addState ...
  • 您不想在活动出现时更改颜色?这是你想要的,当用户选择它时不要改变它的状态?

标签: android android-edittext state highlighting


【解决方案1】:

这并不容易(以编程方式)。您可以尝试使用StateListDrawable 来实现此目的。您可以在主题中使用 StateListDrawable 作为 EditText 的背景,以便处理不同的状态。

如果发现了一个非常有趣的样本,它可能会对您有所帮助。抱歉,我自己没试过:Apply StateListDrawable programmatically

【讨论】:

    猜你喜欢
    • 2012-11-09
    • 1970-01-01
    • 2013-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多