xamarin.forms - Xamarin Forms(Android):ListView向上滑动以取消拉动以刷新
问题描述
我正在开发一个 xamarin 表单项目,我们已经启用了下拉刷新列表视图。一切正常,但是我观察到在 iOS 上可以取消拉动刷新,然后通过执行以下操作继续滚动:
- 下拉并按住
- 拉起(注意:下拉再上拉时不要松手)。
- 您会看到拉动刷新没有继续,屏幕将向下滚动
然而,在 Android 上,情况并非如此。拉动刷新卡住了,它不会向下滚动。我怎样才能让它向下滚动呢?
作为参考,您也可以在 facebook 应用程序上尝试此操作。
解决方案
通过为 ListView 创建自定义渲染器并覆盖 OnInterceptTouchEvent 来解决问题。跟踪初始触摸的位置,当 Y 的增量从大于 0 变为小于 0(手指向下滑动然后返回到初始位置)时,我通过调度 MotionEventsAction.Cancel 和 MotionEventsAction.Down 重置触摸。
推荐阅读
- web-scraping - 使用scrapy从类名中获取元素内的文本
- c - printf 的 readline() 函数问题
- deployment - Netlify 部署命令失败,退出代码为 254:npm run build-studio && cp studio/netlify.toml studio/dist
- android-studio - 运行此 AVD 需要 Intel HAXM。未安装 HAXM。安装 Intel HAXM 以获得更好的仿真性能
- javascript - 通过 Node.js 比较 PostgreSQL 中的日期不起作用
- javascript - 根据最高数字突出显示 div
- reactjs - 如何在 React 前端显示来自我的 express 服务器的数据?
- reactjs - 即使在实施后端快速代理设置后也出现 CORS 策略错误
- python - TypeError:import_optional_dependency() 得到了一个意外的关键字参数“错误”
- postgresql - 如何在postgresql中将三个不同的表组合成一个json响应