我已经浏览了TableLayouts和其他类似的东西的教程,但所有这些似乎被编程为带有textview的静态行数.我想知道是否有可能创建一个简单的数据表,包含3列和一组可变行,我可以在Java代码中添加/删除项目.
基本上,有这样的事情:
DATA DATA DATA
row1 data data
row2 data data
Run Code Online (Sandbox Code Playgroud)
并使用活动的Java类中的对象数组填充此表.稍后,如果我想添加另一个对象,它将只创建另一行.
例如,如果我在java中有这个:
Class data{
public data(String d1, String d2, String d3){
data1=d1;
data2=d2;
data3=d3;
}
}
Run Code Online (Sandbox Code Playgroud)
这在活动类中:
Class activity{
data info[] = {
new data("row1", "row1", "row1"), new data("row2","row2","row2"),
new data("row3","row3","row3")};
}
}
Run Code Online (Sandbox Code Playgroud)
我将使用for循环将此数据添加到活动的表中,而不管我需要多少行才能适合它.如果我添加row4的新对象,它将只添加另一行,并以:
row1 row1 row1
row2 row2 row2
row3 row3 row3
Run Code Online (Sandbox Code Playgroud)
我希望我没有太模糊......提前谢谢,伙计们!:)
Nic*_*aro 21
我觉得非常愚蠢,但我自己想出来了.
我只是通过一个从0到myArray.Length()的for循环在我的内部创建了一个动态添加的行.
巴姆:
TableLayout prices = (TableLayout)findViewById(R.id.prices);
prices.setStretchAllColumns(true);
prices.bringToFront();
for(int i = 0; i < drug.length; i++){
TableRow tr = new TableRow(this);
TextView c1 = new TextView(this);
c1.setText(drug[i].getName());
TextView c2 = new TextView(this);
c2.setText(String.valueOf(drug[i].getPrice()));
TextView c3 = new TextView(this);
c3.setText(String.valueOf(drug[i].getAmount()));
tr.addView(c1);
tr.addView(c2);
tr.addView(c3);
prices.addView(tr);
}
Run Code Online (Sandbox Code Playgroud)
这是一场毒品战争风格的游戏......试着在游戏开发领域开始小规模.
但是......她工作,完全按照我的意愿行事.现在我可以将它包装成一个单独的方法并随时更新它.如果我想添加一行,我只需添加一个数组条目.
想我会回答我自己的问题......哈哈!
| 归档时间: |
|
| 查看次数: |
18255 次 |
| 最近记录: |