问题描述
- TableRow 中的 addView() 如何运行?
-
我使用的下面的代码:private void addSnapPictureRow(TableLayout table, Bitmap bitmap) { /* * 1st row = TextView (Check In) */ TableRow row = new TableRow(this); row.setGravity(Gravity.CENTER_HORIZONTAL); // add text TextView text = new TextView(this); text.setText("Snap Picture"); TableRow.LayoutParams textLayoutParams = new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT); textLayoutParams.setMargins(100, 0, 0, 0); row.addView(text, textLayoutParams); // add picture ImageView picture = new ImageView(this); picture.setImageResource(R.drawable.adium); row.addView(picture); /* * 2nd row = View (separator) */ TableRow separator = new TableRow(this); View line = new View(this); TableRow.LayoutParams separatorLayoutParams = new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, 1); separatorLayoutParams.setMargins(100, 0, 0, 0); line.setBackgroundColor(Color.BLUE); separator.addView(line, separatorLayoutParams); // add row to table table.addView(row); // add a separator table.addView(separator); }
但是图像并没有出现,如果我把 gravity 改成CENTER_HORIZONTAL,但是只显示图像的一部分:
当使用xml创建表格时,我以为它会自动的水平对齐。我不知道TableRow layout是如何运行。请大家指点一二。
时间: 2024-11-18 00:53:07