Android 中的 ViewPager 滚动问题

2023-12-24

我有一个ViewPager动态数量images在里面。这ViewPager作为自定义行添加到表视图中。由于此表视图可以有多个动态自定义行,因此我必须在scrollview用于滚动。

现在我的问题是,当我水平滚动到“查看寻呼机”时,它并不完全是水平滚动,它还与一些垂直滚动混合在一起。因此,当检测到垂直滚动时,事件将传递到滚动视图;这使得ViewPager重置至初始位置。

那么我怎样才能将事件传回ViewPager或者避免滚动视图捕获垂直滚动事件?

Note:我尝试禁用scrollview垂直滚动,但这并没有阻止它捕获垂直滚动事件。


我找到了我的问题的解决方案,这就是我的做法。

我通过以下方式覆盖 Viewpager 的触摸事件

myViewPager.setOnTouchListener(new OnTouchListener() {

                public boolean onTouch(View v, MotionEvent event) {

                    if(event.getAction() == MotionEvent.ACTION_MOVE && myScrollView!=null){
                        myScrollView.requestDisallowInterceptTouchEvent(true);
                    }
                    return false;
                }
            });

注意:正如我的问题中所述,我的 ScrollView 是 ViewPager 的父级。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 中的 ViewPager 滚动问题 的相关文章

随机推荐

  • 使用 Mongoose 返回更新后的集合

    我使用nodejs express mongoose angularjs 我想更新一个名为 Lists 的集合 它具有多个属性 其中之一是项目数组 在下面的代码中 我在 items 数组中推送一个新的任务项 一切正常 但是更新函数不会发回更
  • Java - 编辑现有的 JSON 文件

    嘿 我想知道是否可以编辑现有的 json 我知道位置 假设位置是 C Something json 那我该如何编辑呢 Thanks 如果你想编辑复杂的 JSON 结构 我建议使用GSON https code google com p go
  • jquery 使用绑定与点击

    我遇到过几种在 jquery 中处理点击事件的方法 bind mydiv bind click function click mydiv click function on mydiv on click function 两个问题 他们还有
  • Stripe Checkout https://checkout.stripe.com/checkout.js 和 Elements https://js.stripe.com/v3/ 之间的区别

    我正在使用条纹支付与我的系统集成 但我不明白这两个库之间的区别 似乎使用 javascript 生成表单并将令牌传递到我们的服务器端
  • 为什么全局描述符表的第一个段描述符仅包含零?

    在我见过的许多教程中 第一个段选择器仅包含零 后面是代码和数据段 例如 lgdt gdt descriptor More code gdt start gdt null long 0x0 long 0x0 More descriptors
  • Angular 2 RC4 中的形式

    我正在尝试 Angular 2 RC4 中的表单 一切正常 但是当我启动应用程序时 浏览器控制台向我显示以下消息 It looks like you re using the old forms module This will be op
  • Gradle:复制子项目资源

    我有一个项目 其中包含一些我正在使用 Gradle 的子项目 我想做的是将资源从子项目A复制到主子项目B 我的结构看起来像这样 Application subprojectA src main resources blah subproje
  • 如果没有连接,Android WebView 不会加载缓存的网站

    我正在尝试缓存 WebView 中加载的网站 但如果网络连接关闭 我将无法使其工作 Cachdirectory 已创建 缓存文件就在那里 已授予权限 我加载网页然后关闭网络 也给出了 WI FI 权限 当我尝试重新加载页面时出现错误 现在应
  • 填充中的排序不起作用(猫鼬)

    我的MongoDB版本是3 2 mongoose版本是4 6 0 这些是我的架构 chat const chatSchema new mongoose Schema users type mongoose Schema Types Obje
  • 在 DirectX 中显示视频

    在使用 XAudio2 和 Direct3D9 10 的应用程序中显示视频 带声音 的最佳 最简单方法是什么 至少它需要能够传输可能更大的视频 并考虑到窗口宽高比可能与视频不同的事实 例如通过添加信箱 尽管理想情况下我希望能够将视频嵌入到3
  • Macroable.php 第 74 行中的 BadMethodCallException:方法控制器不存在

    当我遵循路线控制器时 我遇到了一些问题 Web php代码 Route controller admin adminController adminController php代码
  • VS Code Python 等待调试器连接超时

    昨天 在 Visual Studio Code 自我更新 从 1 27 2 到 1 28 2 之前 我可以在激活特定环境并调试脚本后从 anaconda 提示符中打开它 现在 当我尝试调试脚本时 收到有关等待调试器连接超时的错误 我遵循了另
  • 如何使 DIV 部分可点击?

    我编写了一个网页 其中的链接都包含在它们自己的标签中 我还使用 CSS 边框 背景颜色 填充 将它们设置为所有按钮样式 如何让整个 DIV 被点击来激活链接 实现这种效果 使链接像按钮一样 的最佳方法是将 css 应用到链接本身 这是一个基
  • 回收位图异常

    我收到这个异常 异常 java lang IllegalStateException 无法复制回收的位图 我的代码是 int width bitmap getWidth int height bitmap getHeight int new
  • 如何在子测试中访问 Jest 测试环境的类属性?

    我已经为jest创建了一个测试环境 它非常接近于他们的官方文档 https jestjs io docs en configuration testenvironment string 我在构造函数中设置了一些值 我希望将它们提供给环境中使
  • Android 跳过 WebView 焦点并使用 TalkBack 直接进入内容

    我的 Android 应用程序中有一个 WebView 但启用 TalkBack 后 它会聚焦于整个视图 用户必须滑动到下一个项目才能开始听到 WebView 内容 有没有办法跳过WebView的选择并直接跳到选择内容 在尝试之后我不这么认
  • 基于控制器操作的 Rails 条件(“if”)语句

    可能有更好的方法来做到这一点 但我试图在控制器中基于当前操作在 Rails 中创建一个 if 语句 这将在视图中使用 例如 如果它是编辑页面或显示页面等 我想要不同的样式 是否有 if 语句可以指定这一点 我需要一个 if 语句 因为它在多
  • Liquibase + Postgresql + Spring Jpa:Id 自动递增问题

    我在实体中有以下描述 Id GeneratedValue strategy GenerationType IDENTITY private Long id 用于生成此 id 的 Liquibase 指令如下
  • 通过 Flask 将串行数据传递给 javascript

    我一直在研究将数据从 Flask 推送到 Javascript 主要是通过修改此处找到的代码 https github com clebio flask d3 https github com clebio flask d3 现在我尝试从
  • Android 中的 ViewPager 滚动问题

    我有一个ViewPager动态数量images在里面 这ViewPager作为自定义行添加到表视图中 由于此表视图可以有多个动态自定义行 因此我必须在scrollview用于滚动 现在我的问题是 当我水平滚动到 查看寻呼机 时 它并不完全是