android - EditText setOnKeyListener 中的问题

标签 android

我有一个 EditText。在 EditTextsetOnKeyListener 上,我想执行以下操作。

  1. 单击键盘上的“完成”按钮后,我想在我的 TextView 中显示一些内容。

  2. 点击其他按钮,而不是完成按钮,我想让 TextView 空白。

为此,我编写了代码,但它适用于单击完成按钮,但不适用于其他按钮。所以谁能帮我解决这个问题?

我的代码

EditText.setOnKeyListener(new OnKeyListener() 
{
    public boolean onKey(View v, int keyCode, KeyEvent event) 
    {           
        if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER))
        {                             
            m_passwrdErrorText.setText(m_res.getString(R.string.passwrd_error_text));
        }
        else
        {
            m_passwrdErrorText.setText("");
        }
        return false;
    }
});

最佳答案

可以试试

editText.setOnEditorActionListener(new OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_DONE) {
            // do your stuff here
        }
        return false;
    }
});

关于android - EditText setOnKeyListener 中的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10813436/

相关文章:

android - Android Studio 3.0 Canary 4 构建错误

android - 离线安装 Android 支持存储库

java - connect() 上的 Android SSH 异常 - "KeyFactory ECDSA implementation not found"

android - 如何根据本地设置格式化没有年份的Android日期并显示月份和日期?

android - BufferQueue 已被放弃 : When playing video with TextureView

android - Xamarin WebViewClient onLoadResource/onPageFinished

android - Moshi 在浮点值处崩溃

android - @InjectView 字段何时注入(inject)?

android - 在 Fragment 更改时更改状态栏颜色 [Android Lollipop]

android - 具有不同范围的模块