繁体   English   中英

Android:用手指向上滑动视图

[英]Android: sliding views upwards with finger

我在XML中定义了一个View ,我想要的是让用户向上滑动视图,如果它没有上升一半,则返回。 但在谷歌搜索一段时间后,我找不到任何有助于谷歌搜索的链接。 任何想法将不胜感激,谢谢!

要使用手指移动视图,您可以使用以下想法:在用户移动手指时检测触摸并根据移位移动视图。

GestureDetector gestureDetector = new GestureDetector(context, 
  new GestureDetector.SimpleOnGestureListener() {
    @Override
    public boolean onScroll(MotionEvent start, MotionEvent event, float distanceX, float distanceY) {
        view.setTranslationY(event.getY()-start.getY());
        return true;
    }
});

view.setOnTouchListener(new OnTouchListener() {
    @Override
    public boolean onTouch(View view, MotionEvent event) {
        gestureDetector.onTouchEvent(event);  // here we pass events to detector above
        return false;
    }
});

如果要在用户停止滑动时将视图返回到初始位置,请在onTouch (见上文)写下:

if(event.getActionMasked()==MotionEvent.ACTION_UP) {
    view.setTranslationY(0);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM