Android 在LinearLayout中使用Gridview和按钮
我尝试在下面的代码中添加linearlayout中gridview下面的按钮。但当我执行我的应用程序时,我只看到gridview,没有按钮项。所以这可能是一个基本的错误,但我看不出来Android 在LinearLayout中使用Gridview和按钮,android,android-layout,android-view,Android,Android Layout,Android View,我尝试在下面的代码中添加linearlayout中gridview下面的按钮。但当我执行我的应用程序时,我只看到gridview,没有按钮项。所以这可能是一个基本的错误,但我看不出来 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width=
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:background="#2a2a2a"
>
<GridView
android:id="@+id/grid_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:columnWidth="150dp"
android:numColumns="auto_fit"
android:horizontalSpacing="10dp"
android:verticalSpacing="10dp"
android:stretchMode="columnWidth"
android:gravity="center"></GridView>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:text="@string/cam_string" />
</LinearLayout>
将线性布局的方向更改为垂直布局
。我怀疑您没有看到按钮,因为GridView占据了所有水平空间,然后LinearLayout将按钮添加到屏幕之外不可见的位置。您还可能希望将GridView的布局高度更改为“0dip”,并为其赋予“android:layout\u weight=1”属性,以便它将填充除按钮占用的空间之外的所有空间。除了其他人建议的解决方案之外,您可以使用相对布局尝试其他替代方案
为此,可以使用RelativeLayout
,而不是线性布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#2a2a2a" >
<GridView
android:id="@+id/grid_view"
android:layout_above="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:columnWidth="150dp"
android:numColumns="auto_fit"
android:horizontalSpacing="10dp"
android:verticalSpacing="10dp"
android:stretchMode="columnWidth"
android:gravity="center"></GridView>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="@string/cam_string" />
</RelativeLayout>
谢谢,@Raghunandan它可以工作,但按钮在gridview层上移动;我不理解你的评论。