出现这种情况是因为你让scrollview获得了焦点,所以它才会滚动。如果你百度了以后,你可能会发现有些博客会说让焦点停在固定的一个view中就可以了。这对于不存在刷新的页面确实是可以的,但是当你出现诸如定时刷新页面的情况的时候,你就会发现这个方法不好操作。因为一旦刷新后焦点的控制就不好弄了。这时就不得不提一提一个比较少用的属性——>android:descendantFocusability
该属性是当一个为view获取焦点时,定义viewGroup和子控件两者之间的关系。属性的值有三种:
beforeDescendants:viewgroup会优先其子类控件而获取到焦点
afterDescendants:viewgroup只有当其子类控件不需要获取焦点时才获取焦点
blocksDescendants:viewgroup会覆盖子类控件而直接获得焦点
这就方便多了,我们只要在scrollview里面的LinearLayout中加上第三个属性就保证了,无论内容怎么变都会影响到滚动情况。
时间: 2024-10-24 23:26:06