首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在EditText中了解按键

如何在EditText中了解按键
EN

Stack Overflow用户
提问于 2011-08-19 13:12:34
回答 3查看 49.3K关注 0票数 37

我需要检测EditText中软键盘或硬键盘上的每一个按键。我只需要一次发送一个字符,因为它们是按下的,不需要最后的文本字符串。

我试过在onKeyPress上使用EditText,但我遇到了软键盘无法获得按键的问题,TextWatcher不是一个好的选择,因为我需要每次按键。有没有办法知道所有的按键(包括back,shift,enter...还有)?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-01-10 12:55:02

如果您有一个EditText,那么您可以使用TextWatcher接口。在我的代码中,search_edit是一个EditText

代码语言:javascript
复制
search_edit.addTextChangedListener(new TextWatcher() {          
    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) {                                   
        //here is your code
        myadapter.getFilter().filter(s);
        listview.setAdapter(myadapter); 
    }                       
    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {
        // TODO Auto-generated method stub                          
    }                       
    @Override
    public void afterTextChanged(Editable s) {
        // TODO Auto-generated method stub                  
    }
});
票数 61
EN

Stack Overflow用户

发布于 2011-08-19 13:39:56

实现这一点:

代码语言:javascript
复制
 et_code_1.setOnKeyListener(new View.OnKeyListener() {
            @Override
            public boolean onKey(View v, int keyCode, KeyEvent event) {
                if (keyCode == KeyEvent.KEYCODE_ENTER) {
                    /* do something */
                }
            return true;
            }
        });

更新:

如果你想实现一个软键监听器,你可以实现TextWatcher。下面是一个示例:How to use the TextWatcher class in Android?

票数 8
EN

Stack Overflow用户

发布于 2011-08-19 13:17:42

使用addTextChangedListener(TextWatcher watcher)并实现TextWatcher接口。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7117209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档