Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用长文本时如何减少静态布局延迟_Java_Android_Textview_Epub_Staticlayout - Fatal编程技术网

Java 使用长文本时如何减少静态布局延迟

Java 使用长文本时如何减少静态布局延迟,java,android,textview,epub,staticlayout,Java,Android,Textview,Epub,Staticlayout,我使用StaticLayout对文本进行分页以创建一个epub应用程序,我的文本有16000行 StaticLayout对象大约在6秒后创建,速度非常慢 我如何减少这一时间,或者是否有其他方法可以使用StaticLayout来代替?问题在于,您试图同时布置整个布局。布置16000行文字是昂贵的。即使是在一台拥有强大CPU的台式计算机上,你也要花费大量的时间,而你正试图在手机上完成这项工作 相反,采取渐进的方法。大致计算一下一页中可能包含的文本量——可能是1000个字符。可以调整此值。把它摆出来,

我使用StaticLayout对文本进行分页以创建一个epub应用程序,我的文本有16000行

StaticLayout对象大约在6秒后创建,速度非常慢


我如何减少这一时间,或者是否有其他方法可以使用StaticLayout来代替?

问题在于,您试图同时布置整个布局。布置16000行文字是昂贵的。即使是在一台拥有强大CPU的台式计算机上,你也要花费大量的时间,而你正试图在手机上完成这项工作

相反,采取渐进的方法。大致计算一下一页中可能包含的文本量——可能是1000个字符。可以调整此值。把它摆出来,看看是否足够,如果需要,再摆更多


您可以使用来高效地执行此操作。确保在创建时将其传递给用户,以便在添加更多文本时更新布局。

您能给我举个例子吗?我正在做一个项目,它的最后期限即将结束。我需要一个你所说的实际例子。我唯一的请求是处理一个很长的文本进行分页和显示。谢谢你@Ryan M。嗨@Ryan-M。你能帮我吗?嗨,恐怕我对这些API还不够熟悉,不需要做很多工作就可以写出一个完整的例子——我已经有一段时间没有使用它们了。不过,我希望我的回答能为你指明正确的方向。具体来说,您可能希望通过查看使用它的框架代码—您可以从那里轻松搜索整个Android代码库。祝你好运!嗨@Ryan M。我用了你的解决方案,但仍然不起作用。我应该使用EditableTextView吗?“它不起作用”不足以帮助人们理解您的问题。相反,描述确切观察到的行为是什么以及预期/预期的行为应该是什么。对于UI问题,屏幕截图或视频通常很有用。包括任何错误消息的确切文本,包括所有异常(如果适用),以及堆栈跟踪指向的代码行。请看和。