【发布时间】:2011-04-05 02:10:20
【问题描述】:
我在 RelativeLayout 中的 GridView 遇到问题,它又在 ScrollView 中。问题是RelativeLayout的高度没有跟随GridView内容的高度。当多行时,GridView 被剪裁,出现滚动条,这是不可取的。我试图使用来自 Android 层次结构查看器的屏幕截图来说明我的问题。您可以看到红色的 RelativeLayout 框如何剪裁了 GridView 的第二行。我正在粘贴页面的 XML 布局 (page.xml) 和单个网格项 (griditem.xml)。我已经使用以下代码来膨胀 gridAdapter 代码中的网格项:
/****************gridAdapter sn-p**********************/
public View getView(int position, View convertView, ViewGroup parent)
{
View v;
if(convertView==null){
li = LayoutInflater.from(mContext);
v = li.inflate(R.layout.griditem, null);
//code for fetching textView and imageUrl content
TextView tv = (TextView)v.findViewById(R.id.icon_text);
tv.setText(textContent);
ImageView iv = (ImageView)v.findViewById(R.id.icon_image);
//code for fetching and attaching image to imageView
}
else
{
v = convertView;
}
return v;
}
/***********gridAdapter结束sn-p**********************/
/***********起始页.xml**********************/
<TextView android:id="@+id/title" android:layout_weight="1"
android:layout_width="320dip"
android:layout_height="wrap_content"
android:singleLine="false"
android:textStyle="bold"
android:textSize="14dip"
/>
<ImageView android:id="@+id/image"
android:layout_below="@+id/title"
android:adjustViewBounds="true"
android:layout_width="128dip"
android:layout_height="96dip"
android:layout_marginRight="4dip"
/>
<TextView android:id="@+id/name"
android:layout_weight="1"
android:layout_below="@+id/title"
android:layout_toRightOf="@+id/image"
android:layout_width="192dip"
android:layout_height="wrap_content"
android:paddingTop="2dip"
android:textSize="12dip"
android:paddingLeft="2dip"
/>
<TextView android:id="@+id/location"
android:layout_weight="1"
android:layout_below="@+id/name"
android:layout_toRightOf="@+id/image"
android:layout_width="192dip"
android:layout_height="wrap_content"
android:paddingTop="2dip"
android:textSize="12dip"
android:paddingLeft="2dip"
/>
<TextView android:id="@+id/date1"
android:layout_weight="1"
android:layout_below="@+id/location"
android:layout_toRightOf="@+id/image"
android:layout_width="192dip"
android:layout_height="wrap_content"
android:paddingTop="2dip"
android:textSize="10dip"
android:paddingLeft="2dip"
/>
<TextView android:id="@+id/date2"
android:layout_weight="1"
android:layout_below="@+id/date1"
android:layout_toRightOf="@+id/image"
android:layout_width="192dip"
android:layout_height="wrap_content"
android:paddingTop="2dip"
android:textSize="10dip"
android:paddingLeft="2dip"
/>
<Button android:id="@+id/button1"
android:text="buttonText1"
android:layout_weight="1"
android:layout_below="@+id/image"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_marginLeft="96dip"
/>
<Button android:id="@+id/button2"
android:text="buttonText2"
android:layout_weight="1"
android:layout_below="@+id/image"
android:layout_toRightOf="@+id/button1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
/>
<Button android:id="@+id/button3"
android:text="Text"
android:layout_weight="1"
android:layout_below="@+id/image"
android:layout_toRightOf="@+id/button2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
/>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/button1"
android:layout_weight="1"
android:numColumns="auto_fit"
android:verticalSpacing="10dip"
android:horizontalSpacing="10dip"
android:stretchMode="columnWidth"
android:gravity="center"
/>
/***********End page.xml************************/
/***********启动griditem.xml**********************/
android:gravity="center_horizontal">
/***********结束griditem.xml**********************/
你能告诉我我应该怎么做才能让RelativeLayout的高度跟随gridView的全长吗?
谢谢, 昆塔尔![替代文字][1]
【问题讨论】:
-
您似乎仍然没有显示 griditem.xml 的内容,这可能是您的问题的主要原因。
标签: android