解决含有Textview布局在viewpager等横向滑动中滑动不流畅的bug

本文探讨了在使用Viewpager时,当TextView设置为singleLine且包含大量内容时,导致的滑动冲突问题。通过分析TextView源码并提供替代方案,解决了TextView在Viewpager中的横向滑动不流畅问题。

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

1.现象:

      一个viewpager,里面三个布局,其中一个布局中含有Textview,textview设置了sigleline为true,导致在viewpager中当前布局滑动不流畅,卡。

2. 分析原因:

     textview设置sigleline以后,textview在横向上可以滑动,edittext常设置此属性,对于单行大数据的输入可以前后滑动看数据,但是将其放到viewpager等横向滑动的容器中,textview的横向滑动和viewpager的横向滑动冲突了。所以才会出现上面的问题。可以看一下textview的源码applySingleLine(boolean singleLine, boolean applyTransformation,
            boolean changeMaxLines)里面描述的很清楚。

3. 解决方案:

        由于我的需求是文本不需要横向滑动,如果显示不全,直接后面点点点即可,所以替换一种方案,利用lines替代sigleline既可以实现单行。

         上面比较简单,也可以重写textview的setsigleline()方法,不启动横向滑动即可。

         

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值