gpt4 book ai didi

android - 在 android 中创建动态表。新 View 与充气器

转载 作者:搜寻专家 更新时间:2023-11-01 08:10:08 24 4
gpt4 key购买 nike

我想在 android 中创建动态表(自定义行数和列数)。最低 sdk 为 3.0

我想通过以下两种方式之一将其装箱:

1) 通过创建新的 TextView

TableRow tr = ....;

for ( i = 0; i < NumOfRows .... ) {
TextView tv = new TextView(this);
tv.setLayoutParams(...);
tv.setText("Text I wanna to see");
tr.add(tv);
}

2) 通过充气器

LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

for ( i = 0; i < NumOfRows .... ) {
TextView tv = (TextView) mInflater.inflate(R.layout.my_cell_layout, null, false)
.findViewById(R.id.my_cell_item);
tv.setText("Text I wanna to see");
tr.add(tv);
}

3) 你的方式:)

什么更快?我应该选择什么?在此处输入代码

最佳答案

哪个更好就看你的要求了。

来自链接http://www.aslingandastone.com/2010/dynamically-changing-android-views/

因为布局可以在 XML 或代码中创建,所以您可能无需执行动态 XML 布局加载即可完成。话虽这么说,但我认为人们可能想要这样做有一些明显的优势:

代码整洁。在代码中做任何超出基本布局的事情都会变得非常困惑、非常快。代码重用。使用一两行代码将 XML 布局扩展到指定 View 非常容易表现。创建代码内布局所需的对象会导致不必要的垃圾收集。根据 Android Designing for Performance 文章,“尽可能避免创建短期临时对象。”属性可用性。在 XML 布局中定义 View 会公开对象方法并不总是可用的属性。

*可能的缺点:

与在代码中定义布局相比,执行 XML 布局会花费更多时间,尤其是在只有一两个界面元素需要更改的情况下。*

关于android - 在 android 中创建动态表。新 View 与充气器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10602188/

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