Scrollview没有回到顶部

方法1

获取ScrollView里面一个上层任意view,然后调用如下方法:

view.setFocusable(true);

view.setFocusableInTouchMode(true);

view.requestFocus();

方法2(推荐)

在xml中配置,注意,是给ScrollView的子View配置

android:focusable="true"

android:focusableInTouchMode="true"

方法3

scrollView.fullScroll(ScrollView.FOCUS_DOWN);滚动到底部

scrollView.fullScroll(ScrollView.FOCUS_UP);滚动到顶部

需要注意的是,该方法不能直接被调用。

因为Android很多函数都是基于消息队列来同步,所以需要一部操作,addView完之后,不等于马上就会显示,而是在队列中等待处理,虽然很快,但是如果立即调用fullScroll,view可能还没有显示出来,所以会失败。 应该通过handler在新线程中更新

handler.post(newRunnable() {

@Override

publicvoid run(){          

scrollView.fullScroll(ScrollView.FOCUS_DOWN);     

 }  });

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容