【发布时间】:2012-04-24 14:24:57
【问题描述】:
我在使表格看起来像我想要的样子时遇到了一点麻烦。 这是几个问题,但由于它们都参考了下面的图片和我提供的详细信息,我认为它们都应该放在一个帖子中。
这是我目前取得的成就:
标题行包含一个按钮类型的元素。
TableRow.LayoutParams params = new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT);
Button bt = new Button(getContext());
bt.setText("Column1");
mHeader.addView(bt, params);
mHeader.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.WRAP_CONTENT));
addView(mHeader);
表格的其余部分是这样填充的:
(Messagerow 扩展了 TableRow 并有一个 TextView 成员)
for(int i = 0; i < 100; i++) {
MessageRow mr = new MessageRow(getContext());
// stuff to set the TexView text and color
mr.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.WRAP_CONTENT));
this.addView(mr);
}
1.如何使标题行高度更像行?
2。如何使按钮占据行的整个宽度?
如果表格是空的,没有文本行只是标题,那么按钮匹配行宽。只要我添加一行文本,列宽就会调整,但按钮宽度不会。
3.如何使行填充屏幕宽度? (MATCH_PARENT 不这样做)
4.如何在表格行之间画一条细线?
我试图覆盖 MessageRow 上的 onDraw() 函数,但它从未被调用过,甚至一次也没有。
不要误会我的意思。我不是要求你为我做我的工作。这些是我试图自己解决的问题,并在谷歌上搜索并阅读了类似的帖子,但没有找到答案。
注意:我发现 Android 的 Javascript 中的 UI 设计对所有这些都缺乏清晰的控制和清晰的文档小细节。
编辑
这就是我创建表格的方式:
TableLayout mTable = new TableLayout(this);
HorizontalScrollView hview = (HorizontalScrollView) findViewById(R.id.hscroll);
populate(mTable);
mTable.setLayoutParams(new TableLayout.LayoutParams( TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT));
mTable.setBackgroundColor(Color.WHITE);
hview.addView(mTable);
【问题讨论】:
标签: android user-interface tablelayout tablerow