scrollview自动滚动

禁止ScrollView在子控件的布局改变时自动滚动的的方法

社会主义新天地 提交于 2019-12-04 22:01:35
最近在做一个项目,上面是一个LinearLayout布局,下面是一个百度地图的MapView控件,MapView控件的高度比较大,导致整个页面的的内容就超出了屏幕的显示区域,于是就在外面套了个scrollview,但新问题出现了,每次进入页面时,由于地图的加载导致scrollview总是自动滚动到了最底部,上面的LinearLayout区域只显示了下面的一部分,为了解决这个问题我用了scrollview.Fling(0)、scrollview.scrollTo(0,0);但都不管用,没想到看似简单的问题却变得如此地紧手,鼓捣了好久才找到最好的解决办法: 重写scrollview中的如下方法,并将其返回值设为0即可。 @Override protected int computeScrollDeltaToGetChildRectOnScreen(Rect rect) { return 0; } 来源: oschina 链接: https://my.oschina.net/u/726985/blog/127445