Hi... i am trying to capture key events in a custom view. but i think i am missing something to do the same.
Here is a simple code snippet which i tried to exercise the capturing of key event
public class KeyDemo extends View implements OnKeyListener{
public KeyDemo(Context context) {
super(context);
// TODO Auto-generated constructor stub
this.setOnKeyListener(this);
}
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
System.out.println("onKey() : " + keyCode);
return false;
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
System.out.println("onKeyUp() : " + keyCode);
return super.onKeyUp(keyCode, event);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
System.out.println("onKeyDown() : " + keyCode);
return super.onKeyDown(keyCode, event);
}
} public class KeyDemo extends View implements OnKeyListener{
public KeyDemo(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
System.out.println("onKey() : " + keyCode);
return false;
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
System.out.println("onKeyUp() : " + keyCode);
return super.onKeyUp(keyCode, event);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
System.out.println("onKeyDown() : " + keyCode);
return super.onKeyDown(keyCode, event);
}
}
I was expecting that 'System.out.println' statements to execute, but somehow doesn't seem to work.
one line code... but it did the work
thnks :)
Call out to setFocusable() in your constructor and give it a whirl.