gpt4 book ai didi

android - 以编程方式添加到 TableLayout 的 View 未显示

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:50:50 26 4
gpt4 key购买 nike

我正在尝试向 TableLayout 添加 View ,但它们根本不会显示(我正在模拟器上进行测试)。实际上我写了比这更多的代码,即将 textviews 添加到 tablerows,但我已经把它缩减到这个,即使这样也行不通。知道为什么吗?

这是test.xml的代码:

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tableLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</TableRow>

<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TEST" >
</TextView>
</TableRow>

</TableLayout>

Java 代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);

setContentView(R.layout.test);

/* Find Tablelayout defined in test.xml */
TableLayout tl = (TableLayout) findViewById(R.id.tableLayout);
/* Create a new row to be added. */
TableRow tr = new TableRow(this);
tr.setLayoutParams(new TableRow.LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
/* Create a Button to be the row-content. */
Button b = new Button(this);
b.setText("Dynamic Button");
b.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
/* Add Button to row. */
tr.addView(b);
/* Add row to TableLayout. */
tl.addView(tr, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
}

当我在模拟器上测试时,我只看到带有硬编码字符串“TEST”(在 xml 文件中定义)的 TextView 。

最佳答案

在向表中添加行时,尽量不设置 buttonLayout 并且不添加 TableLayout.LayoutParams

//b.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
tr.addView(b);
//tl.addView(tr, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
t1.addView(tr)

我认为 TableLayout.LayoutParams 导致了一些问题。

关于android - 以编程方式添加到 TableLayout 的 View 未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10639099/

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