android - 编辑文本键监听器

标签 android android-edittext keylistener

我的布局中有一个 edittext 和一个按钮,在我的代码中我将 edittextkeyListener 设置为 null

    editText.setKeyListener(null);

这样我就无法在我的 edittext 中输入内容了。现在点击我的按钮,我应该能够输入我的 ediitext。我怎样才能做到这一点。这是一个简单的问题,但我找不到任何解决方案。任何帮助将不胜感激。

最佳答案

我现在可能迟到了,但是我是这样做的:

public class MyActivity extends Activity
{
    private KeyListener listener;
    private EditText editText;

    public void onCreate(...)
    {
        editText = ... // Get EditText from somewhere
        listener = editText.getKeyListener(); // Save the default KeyListener!!!
        editText.setKeyListener(null); // Disable input
    }

    // When you click your button, restore the default KeyListener
    public void buttonClickHandler(...)
    {
        editText.setKeyListener(listener);
    }
}

基本上,在调用 setKeyListener(null) 之前,您首先要保存 EditText 的默认 KeyListener。然后,当您单击按钮时,您再次调用 setKeyListener,传递您之前保存的默认监听器。

关于android - 编辑文本键监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10933056/

相关文章:

android - 在通知中使用 TaskStackBuilder 会重新创建一个 Activity

生成 XML 文件时出现 Android 错误

java - EditText 中 TextWatcher 观察器中的 StackOverflow 错误

java - 如果我在 JFrame 内的任何地方按 escape(不仅仅是在特定的文本框等;),如何关闭 JFrame ?

安卓:SlidingMenu 和 ActionBarActivity

android - 使用 Android Web 服务器在文件夹中提供文件

android - fragment 开始时如何将焦点设置为editText?

java - MaskedEditText 无法获取文本

java - addKeyListener 未按预期工作

java - boolean 值不能同时工作