在ScrollView的TextView中取消了TouchEvent

时间:2014-01-10 14:52:56

标签: android

我在ScrollView中有一个带TextView的布局,因为在TextView中滚动效果不好,除了默认的txt ActionMode之外我还有一个自定义ActionMode,并且由于某种原因直接在textview中滚动会破坏我的ActionMode。 但是,我的问题:

在我的应用程序中,您可以在文本中进行选择并稍后编辑这些选择,我自己实现了这些选择,因为“正常”选择模式不起作用(没有以编程方式设置的选项上的句柄......!)当我编辑选择时,只要文本没有滚动(即顶行位于滚动视图的顶部),它就会起作用。滚动文本时,只要我保持在同一行,选择就会起作用。一旦我上下移动,TextView的onTouch就会获得一个'cancel'事件,并且会调用ScrollView的OnTouchListener ......

1)为什么TextView的MotionEvent会被取消?

2)有没有办法阻止它?也许告诉ScrollView在编辑选择时忽略所有内容?

3)有没有办法可以将我在ScrollView的onTouch中获得的坐标映射到TextView中的坐标? (所以我至少可以将事件发送到txt视图并'假装',因为'取消'从未发生过....

任何想法??? 感谢

1 个答案:

答案 0 :(得分:0)

好的,我找到了解决方案。 我实现了自己的ScrollView,覆盖onInterceptTouchEvent并在编辑textView时返回false ...