在哪里&如何在android中使用onKey,onkeyDown,onKeyPressed事件?

时间:2010-11-13 10:03:18

标签: android

喜   在android中使用onKey和onKeyUp / Down事件的地方。

e.g。我有一个textview。当用户按任意键我想在textview中显示该字符时,      在这种情况下,使用哪个事件(上面)。

PLEASE explain with EXAMPLE 

或者提供一些其他示例来获取关键事件并使用edittext或其他方式进行打印。

提前致谢...

2 个答案:

答案 0 :(得分:12)

如果您在EditText中查看此内容,最好使用这些

editText.addTextChangedListener(new TextWatcher() {
                public void afterTextChanged(Editable s) { 
                    Log.v("TAG", "afterTextChanged");
                }

                public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
                    Log.v("TAG", "beforeTextChanged");
                }

                public void onTextChanged(CharSequence s, int start, int before, int count) {
                    Log.v("TAG", "onTextChanged");
                }
            });

答案 1 :(得分:3)

请参阅以下代码

public class Demo extends Activity
 {

    /**
     *  Variables & Objects Declaration
     * 
     */


     EditText  et;

     private static Context CONTEXT;
    /** Called when the activity is first created. */

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
        setContentView(R.layout.main);
        et =(EditText)findViewById(R.id.header_text02);
        }// end of OnCreate

    @Override
    public boolean onKeyDown(View arg0, Editable arg1, int arg2, KeyEvent arg3) {
        // TODO Auto-generated method stub
        Log.v("I am ","KeyDown");
           switch (keyCode) {
                   case KeyEvent.KEYCODE_A:
                   {
                       //your Action code
                       et.setText("A");
                      return true;
                    }
                      case KeyEvent.KEYCODE_B:
                   {
                       //your Action code
                       et.setText("B");
                      return true;
                    }
                   // similarly write for others too
        }



        return true;
    }// End of onKeyDown



    @Override
    public boolean onKeyUp(View arg0, Editable arg1, int arg2, KeyEvent arg3) {
        // TODO Auto-generated method stub
        Log.v("I am ","KeyUp");
            et.setText("KeyUp");
        return true;
    }// End of onKeyUp



}