我的xml中有TableLayout。
<TableLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/jobs_table"
android:gravity="top"
android:stretchColumns="*"
android:shrinkColumns="*"/>
<TableRow android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/monday"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/tuesday"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/wednesday"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/thursday"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/friday"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/saturday"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/sunday"/>
</TableRow>
然后,我在Activity中添加带按钮的行。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.jobs);
tableLayout = (TableLayout) findViewById(R.id.jobs_table);
// Make some buttons here.
TableRow row = new TableRow(this);
tableLayout.addView(row, new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, TableRow.LayoutParams.WRAP_CONTENT));
当我运行应用程序时,来自XML的带有TextViews的行位于底部,而来自Java代码的按钮位于顶部。如何反转它们(按钮位于按钮上,而TextViews的行位于顶部)?
答案 0 :(得分:1)
我认为this version of addView可以满足您的需求(索引= 0)
public void addView(查看子项, int 索引强>)
添加子视图。 如果没有布局参数 设置在孩子上,默认 设置此ViewGroup的参数 对孩子。参数
子视图添加子视图
索引 添加孩子的位置
答案 1 :(得分:0)
所以,我这样做了:
TextView[] days = new TextView[7];
for(int i = 0; i < 7; i++) {
days[i] = new TextView(context);
days[i].setGravity(Gravity.CENTER);
row.addView(days[i]);
}
days[0].setText(R.string.monday);
days[1].setText(R.string.tuesday);
days[2].setText(R.string.wednesday);
days[3].setText(R.string.thursday);
days[4].setText(R.string.friday);
days[5].setText(R.string.saturday);
days[6].setText(R.string.sunday);
rowsWithButtons.add(row);