how to capture key events in custom views

2 replies [Last post]
ajonnet
Joined: 05/07/2010
User offline. Last seen 16 weeks 6 days ago.

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.

AJ learning Android

Robert Green
Robert Green's picture
Joined: 02/18/2009
User offline. Last seen 6 hours 39 min ago.
Call out to setFocusable() in

Call out to setFocusable() in your constructor and give it a whirl.

ajonnet
Joined: 05/07/2010
User offline. Last seen 16 weeks 6 days ago.
one line code... but it did

one line code... but it did the work
thnks :)

AJ learning Android