2

我正在寻找在 ViewPager 上实现拉刷新,我很好奇最好的方法是什么。

看起来只是在 ViewPager 上设置页面转换并不能真正起到作用,因为你真的想要 onAbsorb 之类的东西,它在 EdgeEffect 中可用。

仅仅实现一个 EdgeEffect 似乎不是正确的选择,因为 AFAICT,它不会移动任何现有的孩子。

我宁愿不使用 PullToRefresh 库(因为它没有被维护),并且宁愿做大部分自定义的东西 -

关于哪种方法是最有希望的方法的任何建议?

4

4 回答 4

1

不要尝试自己实现拉动刷新,有几个很好用的第三方库。

但是在 android 上拉刷新可能不是一个好的选择,刷新操作按钮更好。

一个广泛使用的 pulltorefresh 库。

于 2013-07-26T03:41:36.537 回答
0

它是滑动刷新您想要的,因为它是 ViewPager。当检测结果为正时,检测滑动(第一个元素向左,最后一个元素向右)并请求新数据。为此,您希望通过自定义 ViewPager 和 SwipeGesture 检测器实现 onInterceptTouch。之后,您可以尝试您在问题中建议的其他自定义功能。

于 2014-03-11T08:50:55.997 回答
0

我正在寻找在 ViewPager 上实现拉刷新,我很好奇最好的方法是什么。

您确定不想使用 PullToRefresh 库,我明白了。但是,如果您正在寻找类似的行为,我会在那里开始您的研究/探索。Chris 的 repos 有一个健康的提交历史,你可以从中推断出一些关于设计选择、陷阱和修复的决定。

https://github.com/chrisbanes/Android-PullToRefresh

https://github.com/chrisbanes/ActionBar-PullToRefresh

使用滚动视图之类的东西,我想您可以在操作栏中使用 EdgeEffects 和 PTR,而根本不用担心移动孩子(开箱即用 - 他的 google play 示例应用程序具有这种行为)。但我不确定这是否是您正在寻找的确切效果。

于 2014-08-21T17:08:11.080 回答
-8

不要在 Android 上实现拉取刷新。我知道这不是答案,但拉动刷新是 iOS 惯例,而不是 Android 惯例。

于 2013-07-25T23:05:05.413 回答