问题场景描述:
首页Fragment定义了一个ViewPager,ViewPager中放有两个带有NestedScrollView的View,以此来实现首页两个tab标签切换时展示不同页面的功能,如下图:
现在把首页fragment的第一个tab页滚动到顶部,然后切换到第二个tab页,把第二个tab页滚动到底部,接着切换fragment到“我的”页面,最后再从“我的”页面切换回首页fragment,此时发现第二个tab页自动滚动回到了顶部,和第一个tab保持一致了!很显然这不是常规APP的逻辑,也不是好的用户体验。
问题原因:
两个View的NestedScrollView控件的id重名导致。改成不同id的名称即可。
PS:至于其他类型控件重名会造成什么影响还有待研究,目前实验知道的RecyclerView,SwipeRefreshLayout,TextView重名是没有影响的。