解决ScrollView滑动过程中ScrollTo()方法不起作用的问题

本文介绍了一个在Android开发中遇到的问题及解决方案:使用ScrollView嵌套TextView显示章节内容时,如何在惯性滑动过程中准确地定位到底部。文章通过实例演示了如何使用scrollTo与smoothScrollTo组合来达到即时定位的效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http://blog.youkuaiyun.com/lovehong0306


本篇文章作为新的类别 “Android经验之谈” 开篇之作,记录实际开发中遇到的比较“奇怪”的问题以及解决方案,不求长篇大论,但求短小精悍,一两句话讲明问题及解决方案,画龙点睛,一语道破天机。


有时候,一句提醒,能让人豁然开朗,少走很多弯路。


案例:阅读软件中用ScrollView嵌套TextView显示章节内容

问题:当滑动ScrollView后(还在惯性滑动中)切换章节内容,并定位到ScrollView底部

此时调用scrollTo(int x, int y)不起作用。

分析原因:由于滑动动画还在继续,scrollTo在执行后效果被滑动动画覆盖,没起作用。


曾苦于一时没有解决方案,未曾找到取消滑动动画的方法,后偶然发现,smoothScrollTo()方法可以打断动画,将

scrollTo()换成smoothScrollTo()方法可正常定位位置,但定位过程有动画要耗费一些时间,不是本想要的快速定位。

经尝试发现以下写法即可满足需求:

//滚动到原点
scrollView.scrollTo(0, 0);
scrollView.smoothScrollTo(0, 0);


注意两个方法调用先后顺序不可颠倒。

此乃纯属偶然发现,想知道为什么,去问谷歌!


http://blog.youkuaiyun.com/lovehong0306


评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值