将长文本分隔为viewpager的页面

时间:2015-05-14 14:07:38

标签: java android string text character

我正在this question中实现messureText方法,以便在viewpager中呈现之前将长文本分隔为具有指定大小的页面。我正在做一个带有增量字符数的while循环来获得所需的文本块,但它似乎不是最好的解决方案。是否有任何建议可以改善此计算的性能? p / s:我指的是Wattpad应用看到它做得这么快但不知道怎么做?

2 个答案:

答案 0 :(得分:6)

StaticLayoutDynamicLayout可以做到这一点。 Android使用(Boring | Static | Dynamic)布局类来测量和包装文本,这些类构造函数将CharSequence作为输入参数,因此样式文本(包含跨度,偶数{ {1}})是可以接受的。 您可以根据视图或屏幕计算ImageSpanpageWidthpageHeight和两个TextPaint参数必须等于您的目标lineSpacing,这里是我的代码:

TextView

答案 1 :(得分:0)

您可以在代码中使用BufferedReader。您可以将字符串留在那里并通过此阅读器操作。比首先创建一个字符串更有效。