Android

时间:2015-10-16 10:38:59

标签: android android-layout

Helle,

我一直在使用CoordinateLayout内部nestedScrollview布局,并且它是孩子。

它类似于whats'app个人资料视图。我试图模仿这个ontouch和dispatchtouch事件超过两天没有成功。

我读了很多关于dispatchTouch事件onTouchEventsetOntouchListener的信息。这是相关的视频。

我在android参考中阅读了有关管理ViewGroup引用的内容,但仍然让我感到困惑。如何处理这些触摸事件。在nestedScrollView中我有子linearlayout,这个布局包含很多子视图,如button和edittext。

当我触摸nestedScrollview(ActionDown)时触发并随后(ActionUp)开始滚动,但是当我触摸它的任何一个孩子的视图时,它应该等待我的手指移动然后开始调用{{1如果是a(ActionMove)。

我在nestedScrollview内处理这个问题。

我如何实现这一目标?请帮忙。

感谢。

1 个答案:

答案 0 :(得分:1)

愚蠢到可以玩我不理解的东西。

我能够模仿whatsapp个人资料,

  @Override
public boolean dispatchTouchEvent(MotionEvent motionEvent) {
    nestedScrollview.onTouchEvent(motionEvent);
    return super.dispatchTouchEvent(motionEvent);
}

调用actionMove on子视图以使用该事件。瞧这个伎俩。与模仿相比,Scroll如何不平滑:0

调用此child.setOnTouchListener

 case MotionEvent.ACTION_MOVE:
                    if (zeroY < mTouchSlop) {
                        mIsScrolling = true;
                        Log.d(DEBUG_TAG, "general" + Float.toString(zeroY) + "  " + Float.toString(plusY));
                    }
                    return true;