我想要做的是能够将新的ImageView插入到TableRow内的LinearLayout中,而无需调整表格行的大小。我的代码如下。
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
addToGrid(7,7);
}
private void addToGrid(int x,int y)
{
TableLayout table = (TableLayout)findViewById(R.id.table);
TableRow row=(TableRow)table.getChildAt(x);
LinearLayout box=(LinearLayout)row.getChildAt(y);
ImageView iv = new ImageView(this);
iv.setBackgroundResource(R.drawable.location);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(70, 70);
iv.setLayoutParams(layoutParams);
box.addView(iv);
}
我想要的是以下内容(但缺少ImageView):
我得到的是:
虽然我无法显示整个布局文件,因为它太大了,但通常情况如下:
<TableLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/table">
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="14">
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/border"></LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/border" />
请注意,我正在将ImageView(地图图标)添加到其中一个Linearlayouts中。 任何帮助将不胜感激!