5

我已经实现了“ClearableEditText”,它主要依赖于 DroidParts 的代码。目的是在右上角(即X按钮)有一个以清除文本EditTextDrawable

我正在为按钮资源使用选择器,它本质上是DrawableRight. 这很完美,但我唯一的问题是按钮从它的父级(EditText)获取错误的按下状态。

重现:

  1. 运行项目
  2. 先输入文字EditText
  3. EditText在没有文本/可绘制的地方按任意位置。

结果:选择器进入 PRESSED 状态。

谢谢你的帮助

4

1 回答 1

3

实现您所追求的唯一方法是在OnTouchListener整体上设置一个并在的坐标内EditText检测,然后相应地替换选择器。如果您不想使用这种技术,您必须创建一个自定义,该自定义将包含一个将两者分开的布局,即带有 an和 a作为它的子级。ACTION_PRESSDrawableViewLinearLayoutImageViewTextView

干杯

于 2013-07-18T07:31:35.757 回答