我有一个密码对话框,每次调用onResume()
的Activity时都会调用它。
但是此对话框有时从不响应点击或触摸事件,会发出如下警告:
Cancelling event due to no window focus: MotionEvent { action=ACTION_CANCEL, actionButton=0, id[0]=0, x[0]=712.2646, y[0]=484.42004, toolType[0]=TOOL_TYPE_FINGER, buttonState=0, metaState=0, flags=0x0, ed
Dropping event due to no window focus: MotionEvent { action=ACTION_MOVE, actionButton=0, id[0]=0, x[0]=703.39716, y[0]=503.06372, toolType[0]=TOOL_TYPE_FINGER, buttonState=0, metaState=0, f
如果未显示对话框,则会显示该对话框。我也在窗口根视图上请求焦点如下:
if (pinDialog != null && pinDialog.isShowing()) {
dialogRootView.requestFocus();
editBox.requestFocus();
return;
}
我在EditBox上实现了一个onTouch监听器,要求键盘显示如下:
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
EditText et = (EditText) v;
et.getText().clear();
et.requestFocus();
return false;
}
return false;
}
如here所述,可以忽略此警告。
但那么可能是什么原因可能是没有响应Dialog并且给出关于窗口没有关注的警告?