gpt4 book ai didi

android - 添加 View 太慢

转载 作者:行者123 更新时间:2023-11-30 02:02:09 25 4
gpt4 key购买 nike

我需要向 ScrollView 添加大约 10 个 View ,我使用以下代码

final LinearLayout item_div = (LinearLayout)activity.findViewById(R.id.item_div);
final LayoutInflater inflater = (LayoutInflater)context.getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
for (int i = 0; i < itemArray.length(); i++) {
View itemTemplate = inflater.inflate(R.layout.item, null);
item_div.addView(itemTemplate);
}

但问题是这个过程大约需要 1-2 秒,它阻塞了主 UI,等待不是从服务器获取数据,而是直接来自添加 View (它们有点重)。现在我的问题是,我可以使用新线程或后台服务来执行此操作吗?任何类型的线程或后台任务都可以处理此类 View 问题,还是在后台执行此操作毫无意义,我应该考虑 RecyclerView 或其他一些解决方案?谢谢

最佳答案

can I use a new thread or background service to do this

不,您不能从后台线程访问您的 UI,否则会抛出异常

or it's pointless to do it in the background and I should consider recyclerview or some other solutions

没有看到您采用的方法的全部目的,很难给出任何答案,但如果您只需要可滚动的容器,RecyclerView 可能会伸出援手。此外,也许您需要显示的 subview 的组合数量有限,您可以考虑准备组合布局,然后只扩充一个,而不是进行 10 个单独的扩充。其他方法是从代码创建您的 subview ,但我将其保留为最后一个检查选项。

关于android - 添加 View 太慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31298223/

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