11

I would like to implement drag-n-drop feature for Android 2.2. I override onTouchListener for each my control. But all my controls are inside ScrollView. When all my controls are visible on in ScrollView, then dra-n-drop works fine. But when not all controls are visible on screnn and scrolling appears, I can't use dra-n-drop. All events come to ScrollView and only scrollview proceed them. Contols didn't get touch events and as result, I can't drag my controls. Does anybody know how to resolve this issue? I suppose, that scrollview should proceed self touch event, but then it should transfer this touch event to the children controls. How can I do it? Or any other solutions?

0

2 Answers 2

24

Use mScrollView.requestDisallowInterceptTouchEvent(true); to avoid ScrollView to handle touchEvents. Also as Ridcully pointed out handle the touch event in onInterceptTouchEvent().

Sign up to request clarification or add additional context in comments.

1 Comment

Thanks a lot! mScrollView.requestDisallowInterceptTouchEvent(true); resolved my issue. I didn't want to implement custom scrollview. I was sure that it's possible to do it without custom view. And your solution really helps me. But I need to call this method and set to true each time when I process touch event of my control.
0

Have a look at the onInterceptTouchEvent() method. You'll have to sub-class ScrollView and override and tweak this method.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.