scrollview显示到任意位置的定位
Android开发中scrollview用来滚屏显示,这个时候由于某些需求,会要求在最开始显示scrollview的时候就定位到固定位置,使用scrollView.scrollTo( x, y );这个方法是能对滚动条进行定位的。
现在来说说其中的坑,有时候设置了scrollView.scrollTo( x, y ),不起作用,调用scrollTo方法看上去好像并没有起到对滚动条进行定位的效果,其实是因为我们是在onCreate里调用的这个方法,而在onCreate方法没有结束的时候,activity的数据并没有完全加载好,所以这个时候调用该方法不会有什么实际的效果的。
正确方法一:
private Runnable runnable = new Runnable() {
@Override
public void run() {
scrollView.scrollTo(0, 300);// 改变滚动条的位置
}
};
正确方法二:
handler = new Handler();
handler.postDelayed(runnable, 200);
最好有个延迟
经常会用到滚到底部位置
scrollView.scrollTo(0,linearlayout.getMeasuredHeight()-scrollView.getHeight());
其中,linearLayout是scrollview里的子view