【问题标题】:Flutter heavy platform code causes UI lagFlutter 繁重的平台代码导致 UI 滞后
【发布时间】:2019-02-04 00:29:30
【问题描述】:

我正在使用MethodChannel.invoke 调用一些平台代码以将应用程序图标返回为Uint8Lists。这发生在设备上所有应用程序的列表(可能很多)上,在ListView.builder 中显示为FutureBuilders。

这在ListView 中快速滚动时会导致很多卡顿,因此我对其进行了更改,以便在显示 ListView 之前预加载所有应用程序图标。这修复了滚动问题,但在加载图标时 UI 非常卡。

我相信问题可能与this issue 相同,我不应该像现在这样在 UI 线程上加载图标。但是,看着docs for compute,我想我不能用它来调用平台代码。

还有其他方法可以避免 UI 延迟吗?

【问题讨论】:

标签: android flutter dart-isolates


【解决方案1】:

pskink 建议使用HandlerThread 成功了!即使没有预加载,我现在也可以流畅地滚动。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-21
    • 1970-01-01
    • 2021-07-02
    • 2015-12-03
    • 2019-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多