Android ListView快速滚动与部分:节文本太长

前端之家收集整理的这篇文章主要介绍了Android ListView快速滚动与部分:节文本太长前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用ListView来实现一个时间轴.我启用了FastScroll并使用了SectionIndexer,以便用户可以拖动滚动条并查看显示的部分文本.

所有这些都是内置的UI的问题.显示部分文本的textview对我来说太小了,我试图显示05pm,对于textview(或其他UI?)来说太长了.

任何更简单的方法解决这个问题?例如,一种方法我可以设置部分文本或textview布局的字体大小?

谢谢!

解决方法

查看AbsListView的源代码,您可以找到处理FastScroller的快速滚动机制的类. FastScroller实际上在画布上绘制了可绘制的图像,并将其提供给AbsListView,如此…
canvas.drawText(mSectionText,(int) (rectF.left + rectF.right) / 2 - hOff,(int) (rectF.bottom + rectF.top) / 2 + mOverlaySize / 4 - descent - vOff,paint);

上面的代码实际上将文本绘制在底部图像drawable之上,因此它不会尊重底部drawable的边界,这就是为什么文本实际上溢出而不被切断.至于为什么这样设计呢?我的猜测是,索引功能的意图主要是用于单字符如A,B,C等,因此快速滚动索引功能被设计为适合.

所以,为了给出一个明确的答案你的问题,真的没有办法改变文本大小或改变如何绘制文本,除非您修改AbsListView和FastScroller以满足您的需要.

原文链接:https://www.f2er.com/android/313108.html

猜你在找的Android相关文章