【问题标题】:After setting a EditText to be unclickable, it still responds to Click events将 EditText 设置为不可点击后,它仍然响应 Click 事件
【发布时间】:2016-06-13 17:34:52
【问题描述】:

我正在为 Android 制作应用程序。
我有一个 EditText,在 XML 布局中我将它设置为不可聚焦但可点击。

我在 EditText 上有一个 Click 侦听器事件,因此如果用户尝试向 EditText 添加内容,它会向用户发出警告,告诉他们他们首先需要做其他事情。

在他们执行其他操作后,我的代码将 TouchMode 中的 EditText 的 Focusable 设置为 true,并将 clickable 设置为 false。

Focusable 部分正在工作,但每当我触摸 EditText 时,它仍在响应 onClickListener()

知道为什么将 clickable 设置为 false 不会禁用 EditText 响应点击事件的能力吗?

【问题讨论】:

  • 在“其他”完成后设置 setOnClickListener(null)
  • 通常 .setClcikable(false);将禁用所有点击事件,但其他命令,例如.setFocusable(...) 将再次启用可点击。您是先将可点击设置为 false,然后再启用可聚焦或执行其他操作,从而再次启用可点击?

标签: android


【解决方案1】:

这样做:

myEditText.setOnClickListener(null);

然后当用户填满你需要填充的空间时,你将监听器设置为:

myEditText.setOnClickListener(myClickListener);

或:

myEditText.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View arg0)
    {
        Toast.makeText(getApplicationContext(), "Now I have onClickListener", Toast.LENGTH_SHORT).show();
    }
});

就是这样。希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2013-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-23
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多