【发布时间】:2011-02-10 16:52:40
【问题描述】:
我正在使用 Tablerow+TextView 为博客文章及其回复创建一个简单的视图。在每个 TableRow 中,我放入了一个 TextView。现在我有两个问题:
长于屏幕的文本不会自动换行为多行。是 TableRow 设计的吗?我已经设置了
tr_content.setSingleLine(false);[更新] 这已经解决了,我想我应该在 textView 中将 Fill_parent 更改为 Wrap_content。tr_author_time.setLayoutParams(new LayoutParams( LayoutParams.**WRAP_CONTENT**, LayoutParams.WRAP_CONTENT));表格不会像 ListView 那样滚动。我的行大于屏幕大小。我希望表格可以像 ListView 一样向下滚动查看。这可能吗?
这是我的代码:
TableLayout tl = (TableLayout) findViewById(R.id.article_content_table);
TextView tr_title = new TextView(this);
TextView tr_author_time = new TextView(this);
TextView tr_content = new TextView(this);
TableRow tr = new TableRow(this);
for(int i = 0; i < BlogPost.size(); i++){
try{
// add the author, time
tr = new TableRow(this);
/////////////////add author+time row
BlogPost article = mBlogPost.get(i);
tr_author_time = new TextView(this);
tr_author_time.setText(article.author+"("+
article.post_time+")");
tr_author_time.setTextColor(getResources().getColor(R.color.black));
tr_author_time.setGravity(0x03);
tr_author_time.setLayoutParams(new LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
tr.addView(tr_author_time);
tl.addView(tr,new TableLayout.LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
////////////////////// then add content row
tr = new TableRow(this);
tr_content = new TextView(this);
tr_content.setText(article.content);
tr_content.setSingleLine(false);
tr_content.setGravity(0x03);
tr_content.setLayoutParams(new LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
tr.addView(tr_content);
tr.setBackgroundResource(R.color.white);
tl.addView(tr,new TableLayout.LayoutParams(
LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
}
【问题讨论】:
-
我们怎样才能使两行高度相等?请看我的问题stackoverflow.com/q/10779802/720176
标签: android textview tablelayout tablerow