gpt4 book ai didi

java - 以编程方式将 TableRows 插入 TableLayout - TableRow 内的 TextView 将不会显示

转载 作者:行者123 更新时间:2023-12-01 13:38:23 24 4
gpt4 key购买 nike

好的,所以我尝试在每次点击按钮时以编程方式将 TableRows 插入到 TableLayout 中。这些行中的每一行都包含一个设置为某个字符串的 TextView。我的问题是,虽然 TableRow 已成功插入,但 TableRow 内的 TextView 中的文本不会显示。

这就是我正在做的事情:

    //prepare TextView to put inside a TableRow
TextView text = new TextView(MyClass.this);
text.setText(someString);
text.setTextSize(15);
text.setTextColor(Color.parseColor("#FF9900"));
text.setLayoutParams(new LayoutParams
(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));


//Prepare TableRow to be inserted
TableRow row = new TableRow(MyClass.this);
row.addView(text);
row.setPadding(4,4,4,4);
row.setGravity(Gravity.CENTER);
row.setLayoutParams(new LayoutParams
(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT));

//add row to the table
someTableLayout.addView(row);

结果:插入了一行,但我看不到文本(我知道该行已插入,因为我可以看到每行之间的分隔线)。我猜它与 LayoutParams 有关?我可能忽略了一些非常愚蠢的事情......但我不知道......

点击Roll后的屏幕截图,它应该插入带有字符串/TextView的行: enter image description here

“Start By Rolling”TextView 是我通过 XML 文件放入的第一行。它显示正常,但以编程方式插入的行却显示不正常

最佳答案

首先,您有一个高度为 match_parentTextView 和一个高度为 wrap_contenttablerow,所以使 TextView 高度也为wrap_content。

第二个为 ex 分配适当的 LayoutParams:

TextView text = new TextView(MyClass.this);
text.setText(someString);
text.setTextSize(15);
text.setTextColor(Color.parseColor("#FF9900"));
text.setLayoutParams(new TableRow.LayoutParams
(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));


//Prepare TableRow to be inserted
TableRow row = new TableRow(MyClass.this);
row.addView(text);
row.setPadding(4,4,4,4);
row.setGravity(Gravity.CENTER);
row.setLayoutParams(new TableLayout.LayoutParams
(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT));

//add row to the table
someTableLayout.addView(row);

关于java - 以编程方式将 TableRows 插入 TableLayout - TableRow 内的 TextView 将不会显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21060166/

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