GridLayout(不是GridView)如何均匀拉伸所有的孩子

我想要一个2×2的网格,里面有一个button。 这只是ICS,所以我正在尝试使用新的GridLayout。

这是我的布局的XML:

<?xml version="1.0" encoding="utf-8"?> <GridLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/favorites_grid" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#00ff00" android:rowCount="2" android:columnCount="2"> <Button android:text="Cell 0" android:layout_row="0" android:layout_column="0" android:textSize="14dip" /> <Button android:text="Cell 1" android:layout_row="0" android:layout_column="1" android:textSize="14dip" /> <Button android:text="Cell 2" android:layout_row="1" android:layout_column="0" android:textSize="14dip" /> <Button android:text="Cell 3" android:layout_row="1" android:layout_column="1" android:textSize="14dip" /> </GridLayout> 

问题是,我的意见不是平均每行拉伸。 这导致了我的GridLayout右边的很多额外的空间。

我试过设置layout_gravity="fill_horizontal"但只适用于行上的最后一个视图。 这意味着单元1一直延伸到为单元0提供足够的空间。

关于如何解决这个问题的思考?

更新 :API 21支持权重。有关更多详细信息,请参阅PaulT的答案 。 END UPDATE使用GridLayout有一些限制,以下引用来自文档 。

“GridLayout并不支持按权重定义的权重原则,因此一般来说,不可能将GridLayoutconfiguration为在多行或多列之间以非平凡比例分配多余空间。为了完全控制在行或列中多余的空间分布;使用LinearLayout子视图来保存相关单元组中的组件。

这是一个使用LinearLayout子视图的小例子。 (我用空间视图,占用未使用的区域,并按下button到所需的位置。)

 <GridLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:columnCount="1" > <TextView android:text="2x2 button grid" android:textSize="32dip" android:layout_gravity="center_horizontal" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <Space android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button 1" /> <Space android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="start" android:text="Button 2" /> <Space android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <Space android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button 3" /> <Space android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="start" android:text="Button 4" /> <Space android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" /> </LinearLayout> </GridLayout> 

从API 21开始,重量的概念被添加到GridLayout中。 为了支持较老的android设备,可以使用v7支持库中的GridLayout。

下面的XML给出了一个如何使用权重来填充屏幕宽度的例子。

 <?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:grid="http://schemas.android.com/apk/res-auto" android:id="@+id/choice_grid" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:padding="4dp" grid:alignmentMode="alignBounds" grid:columnCount="2" grid:rowOrderPreserved="false" grid:useDefaultMargins="true"> <TextView android:layout_width="0dp" android:layout_height="100dp" grid:layout_columnWeight="1" grid:layout_gravity="fill_horizontal" android:gravity="center" android:background="#FF33B5E5" android:text="Tile1" /> <TextView android:layout_width="0dp" android:layout_height="100dp" grid:layout_columnWeight="1" grid:layout_gravity="fill_horizontal" android:gravity="center" android:background="#FF33B5E5" android:text="Tile2" /> <TextView android:layout_width="0dp" android:layout_height="100dp" grid:layout_columnWeight="1" grid:layout_gravity="fill_horizontal" android:gravity="center" android:background="#FF33B5E5" android:text="Tile3" /> <TextView android:layout_width="0dp" android:layout_height="100dp" grid:layout_columnWeight="1" grid:layout_gravity="fill_horizontal" android:gravity="center" android:background="#FF33B5E5" android:text="Tile4" /> </android.support.v7.widget.GridLayout> 

在这里输入图像说明

Appcompat21 GridLayout具有列和行权重,可以像下面一样使用,以便像上面的图像一样均匀地在网格布局中创build每个网格项目。

 <android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:grid="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_centerHorizontal="true" grid:alignmentMode="alignBounds" grid:columnCount="4"> <Button android:layout_width="0dp" style="?buttonStyle" android:layout_height="0dp" android:text="-1" grid:layout_columnWeight="1" grid:layout_rowWeight="1" grid:layout_gravity="fill"/> ... ... ... 

您可以dynamic设置每个小孩的宽度:

 GridLayout.LayoutParams params = (GridLayout.LayoutParams) child.getLayoutParams(); params.width = (parent.getWidth()/parent.getColumnCount()) -params.rightMargin - params.leftMargin; child.setLayoutParams(params); 

从不带v7支持库的API 21开始,使用ScrollView:

在这里输入图像说明

XML:

 <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" > <GridLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:columnCount="2" > <TextView android:layout_width="0dp" android:layout_height="100dp" android:layout_columnWeight="1" android:gravity="center" android:layout_gravity="fill_horizontal" android:background="@color/colorAccent" android:text="Tile1" /> <TextView android:layout_width="0dp" android:layout_height="100dp" android:layout_columnWeight="1" android:gravity="center" android:layout_gravity="fill_horizontal" android:background="@color/colorPrimaryDark" android:text="Tile2" /> <TextView android:layout_width="0dp" android:layout_height="100dp" android:layout_columnWeight="1" android:gravity="center" android:layout_gravity="fill_horizontal" android:background="@color/colorPrimary" android:text="Tile3" /> <TextView android:layout_width="0dp" android:layout_height="100dp" android:layout_columnWeight="1" android:gravity="center" android:layout_gravity="fill_horizontal" android:background="@color/colorAccent" android:text="Tile4" /> </GridLayout> </ScrollView> 

尝试添加以下到您的GridLayout规范。 这应该工作。

 android:useDefaultMargins="true" 

我终于find了解决办法。 正如Rotemmiz所说,之后你必须dynamic地做到这一点。 此代码拉伸button以水平方向填充视图,但垂直方向也可以做同样的操作。

 public void fillview(android.support.v7.widget.GridLayout gl) { Button buttontemp; //Stretch buttons int idealChildWidth = (int) ((gl.getWidth()-20*gl.getColumnCount())/gl.getColumnCount()); for( int i=0; i< gl.getChildCount();i++) { buttontemp = (Button) gl.getChildAt(i); buttontemp.setWidth(idealChildWidth); } } 

(20是用于内部和外部的填充和边距,这可以做得更普遍,但是这是非常干净的)

那么它可以这样调用:

  android.support.v7.widget.GridLayout gl = (android.support.v7.widget.GridLayout)findViewById(R.id.buttongrid); ViewTreeObserver vto = gl.getViewTreeObserver(); vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {@Override public void onGlobalLayout() { android.support.v7.widget.GridLayout gl = (android.support.v7.widget.GridLayout) findViewById(R.id.buttongrid); fillview(gl); ViewTreeObserver obs = gl.getViewTreeObserver(); obs.removeGlobalOnLayoutListener(this); }}); 

必须由观察者完成,因为在我们调用视图之前,我们需要等待视图被绘制。

在我的情况下,我dynamic地添加button,所以我的解决scheme需要一些XML部分和一些Java部分。 我必须从几个不同的地方find并混合解决scheme,并认为我会在这里分享,以便寻找类似解决scheme的其他人可能会发现它有帮助。

我的布局文件XML的第一部分…

 <android.support.v7.widget.GridLayout xmlns:grid="http://schemas.android.com/apk/res-auto" android:id="@+id/gl_Options" android:layout_width="match_parent" android:layout_height="wrap_content" grid:useDefaultMargins="true"> </android.support.v7.widget.GridLayout> 

grid:useDefaultMargins="true"不是必需的,但是我添加了,因为这对我来说更好,你可以应用其他的视觉效果(例如填充)。 现在的button,我必须dynamic地添加它们。 这里是我的代码的Java部分,使这些button,我只包括与这个上下文相关的行。 假设我必须从我的代码中有很多myOptions可用,并且我也不复制OnClickListener代码。

 import android.support.v7.widget.GridLayout; //Reference to Library public class myFragment extends Fragment{ GridLayout gl_Options; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { gl_AmountOptions = (GridLayout)view.findViewById( R.id.gl_AmountOptions ); ... gl_Options.removeAllViews(); // Remove all existing views gl_AmountOptions.setColumnCount( myOptions.length <= 9 ? 3: 4 ); // Set appropriate number of columns for( String opt : myOptions ) { GridLayout.LayoutParams lParams = new GridLayout.LayoutParams( GridLayout.spec( GridLayout.UNDEFINED, 1f), GridLayout.spec( GridLayout.UNDEFINED, 1f)); // The above defines LayoutParameters as not specified Column and Row with grid:layout_columnWeight="1" and grid:layout_rowWeight="1" lParams.width = 0; // Setting width to "0dp" so weight is applied instead Button b = new Button(this.getContext()); b.setText( opt ); b.setLayoutParams(lParams); b.setOnClickListener( myClickListener ); gl_Options.addView( b ); } } } 

因为我们使用支持库中的GridLayout而不是标准的GridLayout,所以我们必须在YourProject.grade文件中告诉成绩。

 dependencies { compile 'com.android.support:appcompat-v7:23.4.0' ... compile 'com.android.support:gridlayout-v7:23.4.0' } 

这是正确的答案

 <?xml version="1.0" encoding="utf-8"?> <GridLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/favorites_grid" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#00ff00" android:rowCount="2" android:columnCount="2"> <Button android:text="Cell 0" android:layout_row="0" android:layout_column="0" android:layout_columnWeight="1" android:layout_rowWeight="1" android:textSize="14dip" /> <Button android:text="Cell 1" android:layout_row="0" android:layout_column="1" android:textSize="14dip" android:layout_columnWeight="1" android:layout_rowWeight="1"/> <Button android:text="Cell 2" android:layout_row="1" android:layout_column="0" android:textSize="14dip" android:layout_columnWeight="1" android:layout_rowWeight="1"/> <Button android:text="Cell 3" android:layout_row="1" android:layout_column="1" android:textSize="14dip" android:layout_columnWeight="1" android:layout_rowWeight="1"/> </GridLayout> 

你可以通过重写ViewGroup的onLayout方法来加快速度。 这是我的通用解决scheme:

 package your.app.package; import android.content.Context; import android.view.ViewGroup; public class GridLayout extends ViewGroup { public GridLayout(Context context) { super(context); } @Override protected void onLayout(boolean changed, int l, int t, int r, int b) { final int columns = 2;//edit this if you need different grid final int rows = 2; int children = getChildCount(); if (children != columns * rows) throw new IllegalStateException("GridLayout must have " + columns * rows + " children"); int width = getWidth(); int height = getHeight(); int viewWidth = width / columns; int viewHeight = height / rows; int rowIndex = 0; int columnIndex = 0; for (int i = 0; i < children; i++) { getChildAt(i).layout(viewWidth * columnIndex, viewHeight * rowIndex, viewWidth * columnIndex + viewWidth, viewHeight * rowIndex + viewHeight); columnIndex++; if (columnIndex == columns) { columnIndex = 0; rowIndex++; } } } } 

编辑:不要忘记match_parent为儿童!

 android:layout_width="match_parent" android:layout_height="match_parent" 

我可以find的最好的解决scheme是使用线性布局(水平)的每一个你想要的行,并在其中分配button(单元格)宽度为0dp和权重为1.对于每个线性布局(行)分配高度到0dp和重量为1.find下面的代码也android:layout_gravity =“center_vertical”是用来alignment行中的button,如果它们包含可变长度的文本。 使用0dp和重量它是一个相当整洁,但不是那么知名的技巧。

 <LinearLayout android:id="@+id/parent_layout" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/button_bue_3d" android:orientation="vertical" > <LinearLayout android:id="@+id/layout_row1" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:orientation="horizontal" > <Button android:id="@+id/button1" style="?android:attr/buttonStyleSmall" android:layout_height="wrap_content" android:layout_width="0dp" android:layout_weight="1" android:clickable="false" android:layout_gravity="center_vertical" android:text="ssssssssssssssssssssssssss" /> <Button android:id="@+id/button2" style="?android:attr/buttonStyleSmall" android:clickable="false" android:layout_height="wrap_content" android:layout_width="0dp" android:layout_weight="1" android:layout_gravity="center_vertical" android:text="sggggggg" /> </LinearLayout> <LinearLayout android:id="@+id/layout_row2" android:layout_weight="1" android:layout_width="match_parent" android:layout_height="0dp" android:orientation="horizontal" > <Button android:id="@+id/button3" style="?android:attr/buttonStyleSmall" android:layout_height="wrap_content" android:layout_width="0dp" android:layout_weight="1" android:layout_gravity="center_vertical" android:text="s" /> <Button android:id="@+id/button4" style="?android:attr/buttonStyleSmall" android:layout_height="wrap_content" android:layout_width="0dp" android:layout_weight="1" android:clickable="false" android:layout_gravity="center_vertical" android:text="s" /> </LinearLayout> </LinearLayout> 

我想要一个居中的表格,标签右alignment,值左alignment。 额外的空间应该在桌子周围。 经过大量的实验,并没有按照文件说我应该做什么,我想出了一些有用的东西。 以下是我所做的:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:orientation="vertical" > <GridLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:columnCount="2" android:orientation="horizontal" android:useDefaultMargins="true" > <TextView android:layout_gravity="right" android:text="Short label:" /> <TextView android:id="@+id/start_time" android:layout_gravity="left" android:text="Long extended value" /> <TextView android:layout_gravity="right" android:text="A very long extended label:" /> <TextView android:id="@+id/elapsed_time" android:layout_gravity="left" android:text="Short value" /> </GridLayout> 

这似乎工作,但GridLayout显示消息:

“这个GridLayout布局或其LinearLayout父项是无用的”

不知道为什么它对我来说是“无用的”。

我不确定这是为什么这个工作,或者这是一个好主意,但如果你尝试,可以提供一个更好的想法,小的改进或解释为什么它的工作(或不会工作),我会很感激的反馈。

谢谢。

这是一个相当古老的问题,但很多人显然对此感兴趣。 对于像这样的4个button的简单布局,似乎TableLayout是完成所需结果的最简单的方法。

以下是一些示例代码,其中显示了具有跨越父级宽度的6列的表的前2行。 每个单元格中的LinearLayout和ImageView用于允许单元格内的图像“打开和closures”,同时使单元格的颜色保持不变。

 <TableLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:stretchColumns="1,2,3,4,5,6" android:background="@drawable/vertical_radio_button_background" android:padding="2dp"> <TableRow android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:id="@+id/brown" android:tag="13" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="1" android:background="@color/brown"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/maraschino" android:tag="9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="2" android:background="@color/maraschino"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/cayenne" android:tag="22" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="3" android:background="@color/cayenne"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/maroon" android:tag="18" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="4" android:background="@color/maroon"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/plum" android:tag="3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="5" android:background="@color/plum"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/eggplant" android:tag="15" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="6" android:background="@color/eggplant"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> </TableRow> <TableRow android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:id="@+id/plum2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="1" android:background="@color/plum"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/lavender" android:tag="14" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="2" android:background="@color/lavender"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/carnation" android:tag="16" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="3" android:background="@color/carnation"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/light_pink" android:tag="23" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="4" android:background="@color/light_pink"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/strawberry" android:tag="10" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="5" android:background="@color/strawberry"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> <LinearLayout android:id="@+id/magenta" android:tag="20" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_margin="1dp" android:layout_column="6" android:background="@color/magenta"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="5dp" android:src="@drawable/selected_check" android:visibility="invisible"/> </LinearLayout> </TableRow> </TableLayout> 

老问题,但想添加我的解决scheme。 我创build了一个“线性网格布局”来模拟一个网格,但使用嵌套的线性布局。 这可以让它伸展来填补空间。

http://zerocredibility.wordpress.com/2014/12/18/linear-grid-layout/

这是我做的,我很高兴地说,这对我有用。 我也想要一个2×2,3×3等项目的网格来覆盖整个屏幕。 网格布局不符合屏幕的宽度。 LinearLayoutstypes的工作,但你不能使用嵌套的权重。

对我来说最好的select是使用本教程中的片段来开始我想做的事情。

这里是一些代码:

主要活动:

 public class GridHolderActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main_6); } } 

activity_main_6 XML(膨胀3个片段)

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <fragment android:id="@+id/frag1" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:name=".TwoHorizontalGridFragment" tools:layout="@layout/two_horiz" /> <fragment android:id="@+id/frag2" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:name=".TwoHorizontalGridFragment" tools:layout="@layout/two_horiz" /> <fragment android:id="@+id/frag3" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:name=".Grid.TwoHorizontalGridFragment" tools:layout="@layout/two_horiz" /> 

基本片段布局

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_gravity="center" android:layout_height="match_parent"> <ImageQueue android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/img1" android:layout_weight="1"/> <ImageQueue android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/img2" android:layout_weight="1"/> </LinearLayout> 

片段类(仅处理自定义视图的初始化)为每个片段膨胀2个图块

 public class TwoHorizontalGridFragment extends Fragment { private View rootView; private ImageQueue imageQueue1; private ImageQueue imageQueue2; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { /** * Inflate the layout for this fragment */ rootView = inflater.inflate( R.layout.two_horiz, container, false); return rootView; } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); imageQueue1 = (ImageQueue)rootView.findViewById(R.id.img1); imageQueue2 = (ImageQueue)rootView.findViewById(R.id.img2); imageQueue1.updateFiles(); imageQueue2.updateFiles(); } 

}

而已!

本质上,这是一个奇怪的使用嵌套权重的工作。 它给了我一个完美的2×3格,填补了我的10英寸平板电脑和我的HTC droid DNA的整个屏幕。 让我知道这是怎么回事!