我的表由动态数据填充,因此我在代码中添加了 TableRows 及其视图。TableLayout 和第一行(我的标题)是在 xml 中构建的。设置为中心的重力作用于这些项目。但是将 Gravity 设置为以我动态创建的 TableRows 和 Views 为中心是行不通的。
<TableLayout
android:id="@+id/poweredEquip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center"
android:padding="10dip">
<TableRow
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/tab_bg_unselected"
android:gravity="center">
<TextView
android:text="Serial"
android:textSize="15sp"
android:textColor="@android:color/black"
android:layout_width="130px"
android:layout_height="wrap_content"
android:ellipsize="middle"
android:gravity="center"
android:layout_column="1"/>
<TextView
android:text="Model"
android:textSize="15sp"
android:textColor="@android:color/black"
android:layout_width="110px"
android:layout_height="wrap_content"
android:ellipsize="middle"
android:gravity="center"
android:layout_column="2"/>
<TextView
android:text="Status"
android:textSize="15sp"
android:textColor="@android:color/black"
android:layout_width="150px"
android:layout_height="wrap_content"
android:ellipsize="middle"
android:gravity="center"
android:layout_column="3"/>
<TextView
android:text="Tool Turned"
android:textSize="15sp"
android:textColor="@android:color/black"
android:layout_width="100px"
android:layout_height="wrap_content"
android:ellipsize="middle"
android:gravity="center"
android:layout_column="4"/>
<TextView
android:text="Hours"
android:textSize="15sp"
android:textColor="@android:color/black"
android:layout_width="110px"
android:layout_height="wrap_content"
android:ellipsize="middle"
android:gravity="center"
android:layout_column="5"/>
<TextView
android:text="Trailer Model"
android:textSize="15sp"
android:textColor="@android:color/black"
android:layout_width="110px"
android:layout_height="wrap_content"
android:ellipsize="middle"
android:gravity="center"
android:layout_column="6"/>
</TableRow>
<TableLayout>
活动.cs
TableLayout powered = (TableLayout) FindViewById(Resource.Id.poweredEquip);
TableRow.LayoutParams p = new TableRow.LayoutParams(ViewGroup.LayoutParams.FillParent, ViewGroup.LayoutParams.WrapContent) {Gravity = GravityFlags.Center};
TableRow.LayoutParams p1 = new TableRow.LayoutParams(ViewGroup.LayoutParams.FillParent, ViewGroup.LayoutParams.WrapContent) {Column = 1, Gravity = GravityFlags.Center};
TableRow row = new TableRow(this) { LayoutParameters = p };
text = new TextView(this) {Text = dr["Serial"].ToString(), LayoutParameters = p1};
text.SetPadding(8, 8, 8, 8);
text.SetMaxWidth(150);
text.SetMinWidth(150);
row.AddView(text);
powered.AddView(row);