android tablerow将xml转换为代码

android tablerow将xml转换为代码,android,textview,Android,Textview,如何在活动中将下面的xml转换为java代码 <TableRow android:background="#00ff00" android:layout_margin="2dip"> <TextView android:id="@+id/firstview" android:layout_margin="2dip"/> <TextView android:id="@+id/someview" android:layout_

如何在活动中将下面的xml转换为java代码

    <TableRow android:background="#00ff00" android:layout_margin="2dip">
        <TextView android:id="@+id/firstview"  android:layout_margin="2dip"/>
        <TextView android:id="@+id/someview"  android:layout_margin="2dip"/>

    </TableRow>
这是一个来自中国的例子

来自

TableLayout的子级不能 指定布局宽度属性。 宽度始终与父项匹配。然而 布局高度属性可以是 由儿童定义;默认值为 包装内容。如果孩子是一个 TableRow,则高度始终为 包装内容

尝试更新LayoutParams以分别对宽度和高度使用MATCH_PARENT、WRAP_内容。

为xml文件中的TableRow(例如myRow)提供id

Java代码:

TableRow tr = (TableRow)this.findViewById(R.id.myRow);

TableRow.LayoutParams lp = new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.WRAP_CONTENT);

lp.setMargins(4, 4, 4, 4);

TextView tv1 = new TextView(this);
tr.addView(tv1, lp);

TextView tv2 = new TextView(this);
tr.addView(tv2, lp);
这样,您就可以设置边距

嗯,用px设置边距,你应该自己把2dip改成px

我来这里问同样的问题,我从这个标题中得到了答案:

请确认,此TableRow将是TableLayout的子项,您只希望能够以编程方式添加视图,对吗?对,我的TableLayout将以XML声明,但TableRow需要动态创建。=在java代码中,我有TableLayout table=TableLayout findviewbydr.id.TableLayout01;。。。。。。。。。。。。。。。。。。。table.addViewrow、new TableLayout.LayoutParams.WRAP_内容、LayoutParams.WRAP_内容;我知道我需要像LinearLayout.LayoutParams lp=new LinearLayout.LayoutParam这样的东西,但我就是做不好…当我执行row.addViewsomeView时,lp someView不显示…谢谢我无法使用MATCH\u PARENT编译…我从这部分获得的代码似乎可以正常工作尝试填充\u PARENT。MATCH_PARENT是在API 8中添加的,用于替换FILL_Parents。我想这就是我在TableRow和TextView中声明布局页边距的方式。所以我想,如果我能知道如何将XML转换成java代码,那就行了……没关系,只需使用FILL\u PARENT而不是MATCH\u PARENT。它应该是一样的。