react native中动画的新手,我想知道是否有人对如何在react native中实现此想法有任何想法。使用水平滚动视图,当特定视图位于屏幕前面时,其大小将比其余视图大一些,就像轮播幻灯片一样。
答案 0 :(得分:0)
步骤-1:打开模式。
步骤-2:添加尺寸为windowWidth / 2的视图
步骤-3:添加另一个尺寸为windowWidth / 1.5的视图(根据需要添加n个视图)。通过将样式设置为flexDirection : row
,将所有视图添加到父视图。
步骤4:添加react-native gesture-handler可用的panResponed。
第5步:将滑动响应者添加到视图中。
第6步:通过更改可通过平移响应器获得的滑动事件的状态来管理状态,以控制何时以及将哪个视图显示在最前面。
步骤7:基于状态,动态放大视图,缩小焦点较少的视图。
第8步:添加不透明黑色的色泽,以使其与背景形成对比,并使当前视图成为前景。
另外请注意:您必须管理一个空视图,其中将包含滑动视图的历史记录,因为最初的左视图将是空的,但是一旦向左滑动,则左视图将具有最近的子视图。
我仍然会要求您使用react-native snap-coursel
希望这会有所帮助。 :)