【发布时间】:2018-09-10 09:11:00
【问题描述】:
我正在尝试使用图片中的自定义视图列表填充线性布局:
为了实现这一点,我将 foo.xml 膨胀到一个新的 View 对象中,然后我使用 .setText 更改 textviews,然后将新 View 添加到线性布局中。
问题是:它非常慢,即使在模拟器之外,在我的 S9 中也需要 10 多秒才能显示。
LinearLayout layout = findViewById(R.id.layout);
while(a<500){
Person person = new Person();
View personData = inflater.inflate(R.layout.person, layout, false);
layout.addView(personData);
((TextView) coinData.findViewById(R.id.textView_text_name)).setText(person.name);
a=a+1
}
编辑:谢谢你们!我现在要试试 RecyclerView
【问题讨论】:
-
你为什么不用ListView?
-
与 RecyclerView 一起使用会更好
-
尝试使用有助于提高屏幕性能的 Recyclerview。
-
你有多少“行”?真的是500?如果是这样,是的,使用
RecyclerView -
膨胀这么久也没关系。还希望它在大多数设备上因 OutOfMemory 异常而崩溃。永远不要膨胀这么大的视图,将它们分成几部分并改用 RecyclerView。
标签: android android-layout android-linearlayout