效果展示:
技术要点:
- 潮汐App的首页布局分为两层,背景为ViewPager的横向场景切换,上层主要为RecyclerView的纵向GridLayout布局。
- 当Touch事件落在红框内,上层布局不处理,由下层ViewPager捕获事件,当Touch事件落在绿框内,按正常逻辑处理。
- 在下层ViewPager捕获到事件时,需要记录滑动的距离,并判断滑动方向,如果为横向,则由ViewPager处理,如果为纵向,则触发上层布局滑动,覆盖住事件透传区域。
- RecyclerView需要与TitleBar嵌套滑动,此处用的CoordinatorLayout结合AppBarLayout实现,由于AppbarLayout没有暴露setTopAndBottomOffset接口,只能通过setExpanded实现RecyclerView的自动滑动,所以Demo相较于潮汐App首页仍有一些瑕疵。