天天看点

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

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()方法,不启动横向滑动即可。

继续阅读