如何防止滚动到焦点 EditText [重复]

Posted

技术标签:

【中文标题】如何防止滚动到焦点 EditText [重复]【英文标题】:How to prevent scrolling to focused EditText [duplicate] 【发布时间】:2013-03-13 14:44:17 【问题描述】:

当 Activity 获得焦点时,android 会滚动到 ScrollView 内的焦点 EditText。

我如何告诉 Android 不要这样做,而是保持滚动位置?

情况:

验证方法必须滚动到 TextView 以引起用户的注意。它将焦点设置到可视区域之外的 EditText 以避免用户混淆(当 Android 在向下滚动后将焦点设置在最近但不相关的 EditText 上时会发生这种情况)。

用户单击一个按钮并通过 startActivityForResult 在第二个活动中输入数据。 onActivityResult 在同一个 TextView 中呈现结果。现在 TextView 不再可见,因为 Android 滚动到焦点所在的 EditText。

【问题讨论】:

谢谢,是的,是重复的 【参考方案1】:

可以使用另一个视图来代替 EditText 来窃取焦点,例如具有 android:focusable="true" 和 android:focusableInTouchMode="true" 属性的布局。 Android 似乎没有使用它来滚动 ScrollView,这正是我所需要的。这是一个 hack 和气馁,但我的第一次尝试也是一个 hack,解决一个错误,所以谁在乎:)。感谢 matthias 的提示。

【讨论】:

【参考方案2】:

尝试使用 setSelected(false) 作为 EditText。

【讨论】:

谢谢。没有区别。

以上是关于如何防止滚动到焦点 EditText [重复]的主要内容,如果未能解决你的问题,请参考以下文章

请求焦点后如何将edittext光标位置恢复为结束

如何防止 QTabWidget 滚动按钮获得焦点?

ListView 内的 EditText 不会保持焦点[重复]

防止焦点 div 使用箭头键滚动

软键盘仅在 EditText 焦点上显示一次

android中EditText的焦点[重复]