【发布时间】:2015-04-11 20:21:29
【问题描述】:
问起来有点内疚,因为有很多问题,但我找不到解决办法。
如何让我的(单身)EditText 在触摸外部时失去焦点? focus 我的意思是视图准备好接受输入,光标可见。我会同意的:
- 当我触摸其他任何东西(例如,外面的空白区域)时,视图会失去焦点;
- 当我触摸布局中的其他视图时,视图失去焦点。
现在,答案主要是说明如何通过向所有其他视图添加点击监听器来实现第二个目标。这是可能的,但在我看来不是最好的方式。
至于第一个(触摸外部时视图失去焦点),大量输入来自:
- this答案:
只有当另一个可聚焦视图获得焦点时,可聚焦视图(例如此 EditText)才会失去焦点。大多数视图默认情况下是不可聚焦的。
看起来像是终极解决方案,但在其他元素上设置 android:focusable(或在触摸模式下可聚焦)(在 RatingBar 和整个 Layout 上尝试过)对我没有任何帮助。
-
this 问题,人们提出了涉及触摸点的
getX()/getY()的解决方案,并检查它是否在编辑文本内。我发现这比问题本身更复杂,如果您有多个编辑文本,这会令人沮丧。
这样一个共同的愿望还有什么别的吗?从概念上讲,为什么如果我向 EditText 提供输入并点击(例如在评级栏上),该视图仍应保持焦点并等待,其光标闪烁?
【问题讨论】:
标签: android android-edittext android-input-method