问题标签 [android-pagetransformer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android - ViewPager + FragmentStatePagerAdapter + PageTransformer
在我的应用程序中,我使用 ViewPager 和 PageTransformer 将一些数据列表显示为卡片组。该列表有时会刷新,并且在常见情况下它包含大量项目,因此我使用带有所需页面限制的 FragmentStatePagerAdapter:
没有什么不寻常的 - pojos 列表,覆盖 getItemPosition() 和使用 notifyDataSetChanged() 添加/清除方法。问题是当我尝试通过网络添加/替换项目时,我的转换器的方法transformPage(View view, float position)被调用为所有新视图的 0.0 位置,并且它们被放置在另一个上(转换被破坏)。
在调试 ViewPager 类后,我注意到transformPage(View view, float position)仅在 ViewPager 的onPageScrolled(..)方法中的一个位置调用,而后者在第一次布局传递后在onLayout(..)中调用。
notifyDataSetChanged() 调用onPageScrolled(..)(和transformPage(View view, float position)分别)和requestLayout()之后。问题是transformPage(View view, float position)的第一次调用发生在布局传递之前,并且位置参数取决于View.left(),它返回0,因为子视图没有布局。在requestLayout()之后的onLayout(..)中,我的transformPage(View view, float position)根本没有被调用,因为是的,现在已经对视图进行了布局,但这不是第一次布局传递。
通过重置适配器(它将ViewPager 中的mFirstLayout标志设置为“true”)或通过调用 ViewPager 的任何公共方法来解决该问题,该方法在其代码中调用transformPage(View view, float position),例如scrollTo,fakeDrag等,但我想知道 - 这是 ViewPager 的所有功能还是它是一个错误或者我做的事情非常非常错误?
对不起我的英语不好,提前谢谢!
android - 实现水平和垂直viewpager(Android)
我需要实现一个可以同时进行水平和垂直分页的 viewpager。如果用户垂直切换页面,垂直的 PageTransformer 应该执行动画。否则,应该发生常规动画。
我找到了几个试图解决这个问题的库,但是当其中一个视图内部有 ScrollView 时,它们就会遇到问题。
如果可能的话,我想在没有第三方库的情况下实现它。
到目前为止,我所拥有的只是垂直查看器的代码,但我不知道如何添加水平功能:
仅供参考,这是我的垂直 PageTransformer:
任何帮助,将不胜感激
android - ViewPager - 使用 PageTransformer 动态更改大小
我正在尝试使屏幕看起来像这样:
|view 1| view 2 |view 3|
| screen |
视图 2 是 的当前视图,是ViewPager
其他 2 个视图宽度的 2 倍,并且比这 2 个视图高一点。视图 1 和视图 3 和视图 2 一样是完整视图,而不是部分视图。使用PageTransformer
,我已经能够使当前视图达到想要的高度以及非常漂亮的微妙动画,但我无法使其更宽。
那么我怎样才能使 View 2 更宽PageTransformer
呢?感谢您的任何回答/评论!
java - 垂直 ViewPager 中的动画
我需要垂直制作这个动画ViewPager
:
https://www.youtube.com/watch?v=wuE-4jjnp3g
这是我到目前为止所尝试的:
这是结果:
https://www.youtube.com/watch?v=G9W2lCKP-_s
我正在使用垂直方向的原始 ViewPager 的副本来查看代码:https://github.com/Devlight/InfiniteCycleViewPager/blob/master/infinitecycleviewpager/src/main/java/com/gigamole/infinitecycleviewpager/VerticalViewPager。爪哇
显然它甚至没有关闭,我需要预览下一页并使两页更接近。
请帮忙
谢谢你。
android - 如何在 ViewPager.PageTransformer.transformPage 方法中检测到页面已完成滑动?
此外,是否同时在传入和传出视图上调用 transformPage 方法?如何为左侧的传出视图制作动画,为右侧的传入视图制作动画?
android - Viewpager PageTransformer 动画背景到前景和前景到背景?
我用变压器动画实现了viewpager,但这里有不同的动画将这个背景应用到前景和前景到背景。
以及不同的前景到背景
但我需要两个在一起。
我使用了这个库https://github.com/geftimov/android-viewpager-transformers但这里它是单独的动画而不是组合动画。
因此,Android 人请帮助如何同时使用从左到右和从右到左的动画。
谢谢你!
android - 自定义垂直视图分页器不适用于子视图上的 onClick 侦听器
我从这里创建了这个自定义 ViewPager(Android:Vertical ViewPager):
我使用在每个页面内加载 ImageView 的适配器。这个 ImageView 有一个 onClickListener。
如果 ImageView 具有此侦听器,则自定义 viewpager 上的滑动不起作用。如果我删除监听器,工作正常。
有人知道可能是什么问题吗?
android-viewpager - ViewPager PageTransformation 问题
我正在使用带有 Velocity 和 Fling 效果的 Vertical ViewPager 来提供 3d 视图。我面临的问题是: i- PageTransformation 不适用于调用 notifydatasetchanged,直到我触摸 viewpager 并滚动一下。ii-当用户滚动列表并且我使用分页在寻呼机中添加新项目时,用户感觉很混蛋。我知道 PagerAdapter 不支持除“notifydatasetchanged”之外的任何其他方法。但是可以改进吗?任何想法将不胜感激。
谢谢
android - viewpager 适配器 notifyDataSetChanged 后,pagetransformer 不工作
我使用ViewPager
andPageAdapter
来显示我的数据,而 ViewPager 有它PageTransformer
,它运行良好,现在我需要在滑动到新项目时更新数据和 UI,但问题是当我滑动到新项目并调用`adapter.notifyDataSetChanged() ,我的数据和 UI 确实更新了,但我的 PageTransformer 不起作用。
这是我的代码:
适配器:</p>
页面转换器:</p>
更新数据:</p>
我只想在滑动到新项目时更新我的 UI 并确保我的 PageTransformer 运行良好,我曾经尝试过:
但是因为我更新了 UIonPageSelected()
所以会导致StackOverFlow
.
android - 当从 ViewPager 中删除页面时,PageTransformer 返回错误的位置
我想在我的 ViewPager https://raw.githubusercontent.com/bhaveshjabuvani88/CarouselEffect/master/CarouselEffectDemo.gif中实现这个动画
一切正常,直到我尝试从 ViewPager 中删除视图。
我在 ViewPager 中有 3 页。当我删除第 N2 页时transformPage(View view, float position)
,第 N1 页和第 N3 页的位置变为 0.0。因此,中心页面(第 N3 页)的位置变为负数:
position -= parent.getPaddingRight() / (float) pageWidth;
并且中心页面正在缩小。
你能帮忙解决这个问题吗?