我有一个表格行,它是屏幕的全宽,它包含 2 个文本视图和一个按钮。理想情况下,我希望显示为:
[文本视图1][文本视图2][按钮]
Textview1 贴在左侧,Button 贴在右侧,Textview2 填充剩余的可用空间。我一直在环顾四周,但找不到任何可以自动拉伸以适应剩余部分的选项。
由于应用程序的性质,我必须自动添加这些表格行及其内容,所以这就是我目前所拥有的。
for( Program element : sampleList)
{
LayoutParams trLP = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
LayoutParams timeLP = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);
LayoutParams titleLP = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);
LayoutParams moreInfoLP = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);
//Table row to hold details
TableRow tr = new TableRow(this);
tr.setLayoutParams(trLP);
//Time
TextView time = new TextView(this);
time.setText(element.getTime());
timeLP.width=50;
timeLP.gravity=1;
time.setLayoutParams(timeLP);
//Title
TextView title = new TextView(this);
title.setText(element.getTitle());
title.setLayoutParams(titleLP);
//Button
moreInfo = new Button(this);
moreInfo.setText("More Info");
//Add to text views to table row
tr.addView(time);
tr.addView(title);
tr.addView(moreInfo);
holder.addView(tr, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
}
上面的工作但显然没有像我想要的那样显示,因为中间文本视图上的 wrap_content,我知道我可以硬编码一个宽度,但非常希望远离这种情况。我正在尝试用我拥有的当前代码实现什么?