2015-07-07 6 views
0

Я использую всплывающее окно в своем приложении. Я хочу убрать окно, когда пользователь прикасается к окну. Я написал приведенный ниже код для того же и его работы. Но проблема в том, что у меня есть scrollview внутри моего окна, когда я пытался прокрутить его, само окно отменяет. Как я могу это предотвратить?Всплывающее окно отменяет прикосновение внутри всплывающего окна

mInflater = (LayoutInflater) getActivity() 
      .getSystemService(Activity.LAYOUT_INFLATER_SERVICE); 
    View layout = mInflater.inflate(R.layout.help_popup, 
      null); 
    mHelpPopup = new PopupWindow(layout, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT, true); 
    mHelpPopup.setOutsideTouchable(true); 
    mHelpPopup.setTouchable(true); 
    mHelpPopup.setBackgroundDrawable(new BitmapDrawable()); 
    mHelpPopup.setTouchInterceptor(new View.OnTouchListener() { 
     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      Logger.get().d("POPUP_WINDOW", "v: " + v.getTag() + " | event: " + event.getAction()); 
      mHelpPopup.dismiss(); 
      return true; 
     } 
    }); 
    mHelpPopup.showAtLocation(layout, Gravity.CLIP_VERTICAL, (int) helpTxtView.getX(), (int) helpTxtView.getY()); 
+0

Возможно, попробуйте проверить тип события или просмотреть, на что он запускается? – Vannen

ответ

0

Я мог бы найти ответ. Это было из-за touchinterceptor. когда я удалил слушателя, он работает нормально.

Смежные вопросы