当前位置: 代码迷 >> Android >> 彻底解决android surfaceview停触摸和键盘切换导致的键盘按键死锁现象
  详细解决方案

彻底解决android surfaceview停触摸和键盘切换导致的键盘按键死锁现象

热度:74   发布时间:2016-05-01 18:42:18.0
彻底解决android surfaceview下触摸和键盘切换导致的键盘按键死锁现象

Java代码

public GameEngine(Context context, AttributeSet attrs) {
??????? super(context, attrs);
??????? this.context = context;
??????? mSurfaceHolder = getHolder();
??????? mSurfaceHolder.addCallback(this);
??????? thread = new Thread(this);
??????? setFocusable(true);
??????? setFocusableInTouchMode(true);
??????? BaseDebug.info(TAG, "GameEngine init over");
}

分析上面的代码 重要的是2个关于焦点的设置

setFocusable(true);//设置键盘焦点

setFocusableInTouchMode(true)//设置触摸屏焦点

?

笔者开始没有设置触摸屏焦点 导致每次在触摸之后按键都会相应onFocusChanged并且gainFocus为false;

如果有触摸和键盘都需要的情况下 一定记得要加上这两行设置!

  相关解决方案