求回帖,我要给分了!!!!!!!!!!!

解决方案 »

  1.   

    没人要分了?只要回帖就给分!!!!!!!!!!!!!!!!!
      

  2.   

    好吧,我遇到了跟你一样的问题. 也是焦点的困扰...
      

  3.   

    我给解决了  给View设置 wmParams.flags = WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
    | WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH;FLAG_WATCH_OUTSIDE_TOUCH 这个是可以获得一次外部焦点,当获取外部焦点的时候 把View再改成
    view.setOnTouchListener(new OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
    if (event.getAction() == MotionEvent.ACTION_OUTSIDE) {
    Log.v("====", "onTouch ACTION_OUTSIDE");
    handler.post(new Runnable() {
    @Override
    public void run() {
    if (view.getParent() != null) {
    wmParams.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;//不允许获取焦点
    wm.updateViewLayout(view, wmParams);
    }
    }
    });
    }
    return false;
    }
    });这样的话就可以获得外部的事件。