gpt4 book ai didi

android - 在 TextView 上设置文本时,在屏幕上显示文本的时间太长

转载 作者:行者123 更新时间:2023-11-29 15:35:26 24 4
gpt4 key购买 nike

我将 TextView 上的文本设置为 14,000,000 个字符长的字符串。

这需要 1 到 5 分钟才能加载到屏幕上(取决于设备)。有什么想法可以加快速度吗?

相关代码如下:

  responseView.text = requestResponsePair.second
.....................
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
tools:context="com.salesrabbit.android.sales.universal.features.lumberjack.TextDisplayFragment">

<TextView
android:id="@+id/request_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/request_label_string"
android:textSize="20sp"/>

<TextView
android:id="@+id/text_view_request"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

<TextView
android:id="@+id/response_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/response_label_string"
android:textSize="20sp"/>

<TextView
android:id="@+id/text_view_response"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

</LinearLayout>

最佳答案

方法一

最近,Google 宣布了 PrecomputedText适用于 SDK 级别 28 及更高版本。与此同时,PrecomputedTextCompat已发布,可用于 SDK 21 至 27。我还没有尝试过,但有一篇来自 Chris Craik 的 Medium 文章称为“Prefetch Text Layout in RecyclerView”,它解释了如何使用它以及在不丢失任何帧的情况下从 UI 线程中获得多少工作负载。

文章摘录

预计算

val precomputedText : Spannable = PrecomputedTextCompat.create(expensiveText, params)

将预计算文本设置为 TextView

TextViewCompat.setPrecomputedText(myTextView, precomputedText)

请务必阅读文档,因为需要将一些内容发布到后台线程。

方法二

将您的文本分成小块或段落。将它放入一个列表中,并使用一个简单的 RecyclerView 来显示列表中的每个项目。这很简单,您将免费获得良好的性能,因为 RecyclerView 将呈现和处理用户可见的项目。

此外,请务必收听 Episode 90: SpanspanspanspanAndroid Developers Backstage播客,它由 Android 工程团队的开发人员主持。

关于android - 在 TextView 上设置文本时,在屏幕上显示文本的时间太长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51411605/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com