AndroidStudio最新版本如何实现水平滑动?
创始人
2024-08-21 11:00:35
0
  1. 在布局文件中添加HorizontalScrollView或ViewPager组件。

  2. 监听用户的手势事件,可以使用GestureDetector类。在onTouchEvent方法中创建GestureDetector对象,并重写onFling方法。

GestureDetector mGestureDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() { @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { if (e1.getX() < e2.getX()) { // 手势向右滑动 } else if (e1.getX() > e2.getX()) { // 手势向左滑动 } return super.onFling(e1, e2, velocityX, velocityY); } });

  1. 将GestureDetector对象与水平滚动组件绑定。在水平滚动组件上覆盖onTouchEvent方法,将所有的触控事件传递给GestureDetector进行处理。

@Override public boolean onTouchEvent(MotionEvent event) { mGestureDetector.onTouchEvent(event); return super.onTouchEvent(event); }

示例代码:

public class MainActivity extends AppCompatActivity {

private GestureDetector mGestureDetector;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    HorizontalScrollView horizontalScrollView = findViewById(R.id.horizontal_scroll_view);

    mGestureDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {
        @Override
        public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
            if (e1.getX() < e2.getX()) {
                // 手势向右滑动
                horizontalScrollView.scrollTo(0, 0);
            } else if (e1.getX() > e2.getX()) {
                // 手势向左滑动
                horizontalScrollView.scrollTo(horizontalScrollView.getWidth(), 0);
            }
            return super.onFling(e1, e2, velocityX, velocityY);
        }
    });

    horizontalScrollView.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {

相关内容

热门资讯

7分钟安装!小程序跑得快的技巧... 7分钟安装!小程序跑得快的技巧,微乐小程序黑科技,学习教程(有挂平台)-哔哩哔哩1、小程序跑得快的技...
第2分钟插件!微乐科技软件下载... 第2分钟插件!微乐科技软件下载,微乐小程序黑科技,窍要教程(有挂工具)-哔哩哔哩1、游戏颠覆性的策略...
6分钟插件!微乐家乡官方app... 6分钟插件!微乐家乡官方app下载,微乐小程序免费黑科技,妙招教程(有挂软件)-哔哩哔哩1、首先打开...
九分钟脚本!提高微乐运气的方法... 九分钟脚本!提高微乐运气的方法,微乐小程序黑科技,手筋教程(有挂app)-哔哩哔哩九分钟脚本!提高微...
第六分钟插件!微乐小程序脚本,... 第六分钟插件!微乐小程序脚本,微乐小程序黑科技,法子教程(有挂辅助)-哔哩哔哩1、不需要AI权限,帮...
第2分钟插件!微信微乐辅助器免... 第2分钟插件!微信微乐辅助器免费安装,微乐小程序黑科技,绝活教程(有挂软件)-哔哩哔哩微信微乐辅助器...
八分钟辅助!微信小程序微乐辅助... 八分钟辅助!微信小程序微乐辅助器免费版v2.0,微乐小程序免费黑科技,模块教程(有挂辅助)-哔哩哔哩...
第九分钟脚本!微信小程序微乐家... 第九分钟脚本!微信小程序微乐家乡辅助器,微乐小程序免费黑科技,讲义教程(有挂辅助)-哔哩哔哩1、首先...
第四分钟安装!微乐河南小程序微... 第四分钟安装!微乐河南小程序微乐辅助脚本,微乐小程序黑科技,指南教程(有挂安装)-哔哩哔哩1、这是跨...
2分钟辅助!微信小程序微乐辅助... 2分钟辅助!微信小程序微乐辅助器教程图片,微乐小程序黑科技,绝活教程(有挂修改器)-哔哩哔哩1、点击...