Java 使用树状图中的数据创建表行

Java 使用树状图中的数据创建表行,java,android,for-loop,treemap,tablerow,Java,Android,For Loop,Treemap,Tablerow,我试图循环遍历树映射,获取其值并将其显示在TableRow中,但它不起作用,我遇到的主要问题是我需要在TableRow中插入7个TextView,然后用另外7个TextView创建另一个TableRow,依此类推,我还尝试使用带有ArrayList值的for循环,但我不知道如何在每次添加7个TextView时更改循环的行为 下面是树形图的代码: public void mapTest() { Map<String, Object[]> data = new TreeMap&

我试图循环遍历树映射,获取其值并将其显示在TableRow中,但它不起作用,我遇到的主要问题是我需要在TableRow中插入7个TextView,然后用另外7个TextView创建另一个TableRow,依此类推,我还尝试使用带有ArrayList值的for循环,但我不知道如何在每次添加7个TextView时更改循环的行为

下面是树形图的代码:

 public void mapTest()
{
    Map<String, Object[]> data = new TreeMap<String, Object[]>();
    data.put("1", new Object[] {"Diego","Diego","Diego","Diego","Diego","Diego","Diego"});
    data.put("2", new Object[] {"Barrena","Barrena","Barrena","Barrena","Barrena","Barrena","Barrena"});

    Set<String> keyset = data.keySet();

    for (String key : keyset)
    {
        Object [] objArr = data.get(key);
        for (Object obj : objArr)
        {
            TableRow newRow = new TableRow(this);
            newRow.setLayoutParams(new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT));
            TextView newText = new TextView(this);
            newText.setText((String)obj);
            newText.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT));
            newRow.addView(newText);
        }

    }
}
public void映射测试()
{
映射数据=新树映射();
数据.put(“1”,新对象[]{“迭戈”、“迭戈”、“迭戈”、“迭戈”、“迭戈”、“迭戈”、“迭戈”});
数据.put(“2”,新对象[]{“barlea”、“barlea”、“barlea”、“barlea”、“barlea”、“barlea”、“barlea”});
Set keyset=data.keyset();
用于(字符串键:键集)
{
Object[]objArr=data.get(key);
用于(对象对象对象:对象对象对象)
{
TableRow newRow=新的TableRow(本);
newRow.setLayoutParams(新建TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_父级,TableLayout.LayoutParams.WRAP_内容));
TextView newText=新的TextView(此);
newText.setText((字符串)obj);
newText.setLayoutParams(新的TableRow.LayoutParams(TableRow.LayoutParams.MATCH_父项,TableRow.LayoutParams.WRAP_内容));
addView(newText);
}
}
}
以下是带有arraylist的for循环的代码:

public void addItemsTable(){
    addToPrueba();
    // reference the table layout
    TableLayout tbl = (TableLayout)findViewById(R.id.Employees);

    TableRow newRow = new TableRow(this);
    newRow.setLayoutParams(new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT));

    for(int i = 0; i<prueba.size(); i++) {
        TextView newText = new TextView(this);
        newText.setText(prueba.get(i));
        newText.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT));
        newRow.addView(newText);
    }

    tbl.addView(newRow);
}
public void addItemsTable(){
addToPrueba();
//参考表格布局
TableLayout tbl=(TableLayout)findViewById(R.id.Employees);
TableRow newRow=新的TableRow(本);
newRow.setLayoutParams(新建TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_父级,TableLayout.LayoutParams.WRAP_内容));

对于(inti=0;i任何与此相关的人来说,这就是有效的代码

    public void mapPrueba()
{
    Map<String, Object[]> data = new TreeMap<String, Object[]>();
    data.put("1", new Object[] {"Diego","Diego","Diego","Diego","Diego","Diego","Diego"});
    data.put("2", new Object[] {"Barrena","Barrena","Barrena","Barrena","Barrena","Barrena","Barrena"});

    Set<String> keyset = data.keySet();

    TableLayout tbl = (TableLayout)findViewById(R.id.Employees);

    for (String key : keyset)
    {
        TableRow newRow = new TableRow(this);
        newRow.setLayoutParams(new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT));
        Object [] objArr = data.get(key);
        for (Object obj : objArr)
        {
            TextView newText = new TextView(this);
            newText.setText((String)obj);
            newText.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT));
            newRow.addView(newText);
        }
        tbl.addView(newRow);
    }
}
public void mapPrueba()
{
映射数据=新树映射();
数据.put(“1”,新对象[]{“迭戈”、“迭戈”、“迭戈”、“迭戈”、“迭戈”、“迭戈”、“迭戈”});
数据.put(“2”,新对象[]{“barlea”、“barlea”、“barlea”、“barlea”、“barlea”、“barlea”、“barlea”});
Set keyset=data.keyset();
TableLayout tbl=(TableLayout)findViewById(R.id.Employees);
用于(字符串键:键集)
{
TableRow newRow=新的TableRow(本);
newRow.setLayoutParams(新建TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_父级,TableLayout.LayoutParams.WRAP_内容));
Object[]objArr=data.get(key);
用于(对象对象对象:对象对象对象)
{
TextView newText=新的TextView(此);
newText.setText((字符串)obj);
newText.setLayoutParams(新的TableRow.LayoutParams(TableRow.LayoutParams.MATCH_父项,TableRow.LayoutParams.WRAP_内容));
addView(newText);
}
tbl.addView(新罗);
}
}
希望有人觉得这个有用