2012-05-17 2 views
0

У меня есть пользовательский скользящий выдвижной ящик, который в основном имеет те же черты, что и в меню опций. Я не понимаю, почему я не использую меню опций в это время, поскольку это выходит за рамки этого вопроса (короткая история - это не сработает).Close SlidingDrawer, когда пользователь заходит за пределы SlidingDrawer

Ящик расположен поверх пейджера представления, поэтому пользователи могут прокручивать между различными фрагментами, взаимодействуя с различными аспектами приложения. Я хочу, чтобы иметь возможность обнаруживать, когда взаимодействует/взаимодействует с чем-либо в стороне от SlidingDrawer. Если это произойдет, я хочу автоматически закрыть скользящий ящик.

Я пробовал слушателей, слушателей событий, жестов, слушателей жестов и т. Д., И я не могу заставить это волшебное зелье работать. У кого-нибудь есть идеи/советы/трюки?

ответ

1

Вы пробовали перекрывая

public boolean dispatchTouchEvent(MotionEvent ev) 

Этот метод унаследованный от деятельности, поэтому вы должны иметь к нему доступ.

Вы не опубликовали никакого исходного кода, поэтому я могу точно сказать, что он сработает. Пожалуйста, дайте нам знать.

+0

Закончив писать некоторую логику вокруг событий касания, чтобы определить зону попадания и закрыть ящик. –

+0

о том, если это фрагмент, а не активность @Udinic – Shoshi

+0

, пожалуйста, объясните подробнее, iam также сталкивается с той же проблемой. – RAHULRSANNIDHI