我在TableRow中有一个TextView。此TextView中包含的文本比屏幕大。因此,我希望文本包含多行。
TableLayout table = (TableLayout)findViewById(R.id.myTable);
TableRow row = new Tablerow(context);
TextView view = new TextView(context);
view.setText(stringWithLotsOfCharacters);
view.setSingleLine(false);
row.add(view);
table.addview(row, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
我尝试使用“setSingleLine”,但它没有我想要的效果。
有什么建议吗?感谢。
答案 0 :(得分:5)
为要包装到布局中的 TableLayout 的列添加android:shrinkColumns="1"
,或者如果要包装所有列,请添加android:shrinkColumns="*"
。
您也可以使用setColumnShrinkable以编程方式执行此操作:
public void setColumnShrinkable (int columnIndex, boolean isShrinkable)
答案 1 :(得分:1)
view.setHeight(LayoutParams.WRAP_CONTENT);