gpt4 book ai didi

android - 不可聚焦的元素,可聚焦于触摸

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:10:32 24 4
gpt4 key购买 nike

我有一个 editText,我想用表单中其他控件的信息自动填充它,同时允许更改它的内容,但不鼓励用户这样做。

所以我将此控件设置为不可聚焦,因此当您按下 actionNext 时,它会移动到下一个控件。但是,如果您单击编辑文本,我希望允许用户更改其内容。

这是我做的:

  mNameEditText.setFocusable(false);
mNameEditText.setFocusableInTouchMode(false);
mNameEditText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mNameEditText.setFocusableInTouchMode(true);
mNameEditText.requestFocusFromTouch();
mNameEditText.setFocusable(true);
}
});

然而,这表现得非常奇怪,结果是当你点击时,你可以编辑,但突然下一个控件(一个 AutoCompleteTextView)不再是可聚焦的了!实际上看起来焦点仍然在编辑文本上并同时转到自动完成 TextView ,如下所示:

enter image description here

我该如何解决这个问题?

最佳答案

  • 为您的文本编辑 View 创建一个子类
  • 在您的 View 中使用它
  • 将其 enabled 属性设置为 false
  • 在您的子类中覆盖触摸处理程序:当文本编辑 View 被触摸时,立即启用该 View 并将其聚焦。当焦点丢失时,再次禁用文本编辑 View 。在子类中执行所有这些操作。
  • 正确设置文本编辑 View 的样式,让用户觉得它是可编辑的

关于android - 不可聚焦的元素,可聚焦于触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46057724/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com