技术开发 频道

Android onKeyDown与Layout坐标交互

  050 {

  051 @Override

  052 public void onClick(View v)

  053 {

  054 // TODO Auto-generated method stub

  055 RestoreButton();

  056 }

  057 });

  058 }

  059

  060 @Override

  061 public boolean onKeyDown(int keyCode, KeyEvent event)

  062 {

  063 // TODO Auto-generated method stub

  064 switch(keyCode)

  065 {

  066 /* 中间按键 */

  067 case KeyEvent.KEYCODE_DPAD_CENTER:

  068 /* keyCode=23 */

  069 RestoreButton();

  070 break;

  071 /* 上按键 */

  072 case KeyEvent.KEYCODE_DPAD_UP:

  073 /* keyCode=19 */

  074 MoveButtonUp();

  075 break;

  076 /* 下按键 */

  077 case KeyEvent.KEYCODE_DPAD_DOWN:

  078 /* keyCode=20 */

  079 MoveButtonDown();

  080 break;

  081 /* 左按键 */

  082 case KeyEvent.KEYCODE_DPAD_LEFT:

  083 /* keyCode=21 */

  084 MoveButtonLeft();

  085 break;

  086 /* 右按键 */

  087 case KeyEvent.KEYCODE_DPAD_RIGHT:

  088 /* keyCode=22 */

  089 MoveButtonRight();

  090 break;

  091 }

  092 return super.onKeyDown(keyCode, event);

  093 }

  094

  095 /* 还原按钮位置的事件处理 */

  096 public void RestoreButton()

  097 {

  098 intButtonX = ((intScreenX-intWidth)/2);

  099 intButtonY = ((intScreenY-intHeight)/2);

  100 mMakeTextToast

  101 (

  102 "("+

  103 Integer.toString(intButtonX)+

  104 ","+

  105 Integer.toString(intButtonY)+")",true

  106 );

  107

  108 /* 以setLayoutParams方法,重新安排Layout上的位置 */

  109 mButton01.setLayoutParams

  110 (

0
相关文章