在Android RecyclerView中减少解析所需日期时间格式延迟的步骤?

在Android RecyclerView中减少解析所需日期时间格式延迟的步骤?,android,datetime,parsing,android-recyclerview,datetime-format,Android,Datetime,Parsing,Android Recyclerview,Datetime Format,我试图在RecyclerView中显示大约20-100个项目,其中我显示每个项目的时间,为了首先显示时间,我需要Parse和Format给定格式的时间,大约900ms用于50个项目 我可以用两种方法来减少这个时间延迟 我可以存储所需的时间戳,以便仅第一次计算所需格式大约需要900ms,但在这之后,每次我都会直接显示已计算的时间戳 在不存储任何内容的情况下,我可以在我的onBindViewHolder中直接调用格式化的函数,每次我都可以计算它,第一个项目大约需要30-40ms,然后下一个项目的延迟

我试图在
RecyclerView
中显示大约
20-100个
项目,其中我显示每个项目的时间,为了首先显示时间,我需要
Parse
Format
给定格式的时间,大约
900ms
用于
50个
项目

我可以用两种方法来减少这个时间延迟

  • 我可以存储所需的时间戳,以便仅第一次计算所需格式大约需要
    900
    ms,但在这之后,每次我都会直接显示已计算的时间戳
  • 在不存储任何内容的情况下,我可以在我的
    onBindViewHolder
    中直接调用格式化的
    函数
    ,每次我都可以计算它,第一个项目大约需要
    30-40
    ms,然后下一个项目的延迟会减少 在第二种方法中,
    900 ms
    将被保存,但我需要反复计算

    有谁能告诉我,当你处理此类问题时,如果延迟很严重,你会使用哪种方法?另外,如果你们还有其他的方法,请告诉我


    谢谢

    我建议您进行更多的分析,以确定您的时间是如何使用的。我的猜测是,50个项目的900ms可能是第一个项目的900ms,第一个项目的@commonware大约需要
    30ms
    ,第二个项目大约需要
    25-30ms
    ,但最后一个项目大约需要
    6ms
    。这听起来像是即时编译的结果,但我感到惊讶的是,每次通话仍然如此缓慢。您可能希望编辑您的问题,并提供一个演示您是如何完成此工作的页面。一种典型的方法是将您概述的两种技术结合起来:延迟执行数据转换,如日期解析/格式化,并缓存结果(例如,在viewmodel中)。