我正在尝试在gridview中显示8个项目.遗憾的是,gridview高度总是太小,所以它只显示第一行,而第二行的一小部分.
设置android:layout_height="300dp"使它工作.包装content,fill_parent显然不是.
我的网格视图:
<GridView
android:id="@+id/myId"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:horizontalSpacing="2dp"
android:isScrollContainer="false"
android:numColumns="4"
android:stretchMode="columnWidth"
android:verticalSpacing="20dp" />
Run Code Online (Sandbox Code Playgroud)
我的物品资源:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:minHeight="?android:attr/listPreferredItemHeight" >
<ImageView
android:id="@+id/appItemIcon"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:src="@android:drawable/ic_dialog_info"
android:scaleType="center" />
<TextView
android:id="@+id/appItemText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="My long application name"
android:gravity="center_horizontal"
android:textAppearance="?android:attr/textAppearanceSmall" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
这个问题似乎与缺乏垂直空间有关.
我能做什么 ?
我正在尝试创建一个包含文本和图像的屏幕.我希望图像像网格一样布局,如下所示,但我希望它们没有周围ScrollView提供的滚动功能.
图像最能说明我的问题:

<ScrollView>
<LinearLayout>
<ImageView />
<TextView />
<GridView />
<TextView />
</LinearLayout>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)
什么是显示不同数量图像的网格的最佳方法,其中网格没有滚动功能?
请注意,禁用GridView的滚动功能不起作用,因为这只会禁用滚动条但不显示所有项目.
更新:下图显示了在GridView中禁用滚动条的情况.

我有一个相当复杂的ListView,具有可变列表项高度.在某些情况下,我需要在列表项中显示一个附加视图,默认情况下隐藏它(View.GONE).通过启用它(View.VISIBLE),列表项的高度增加(或者至少应该增加).
问题:即使我将项目的根布局声明为wrap_content,并且将项目中的每个组件声明为fill_parent,我隐藏/显示应该更改项目高度的视图只是在底部而不是其父级切断(项目布局)在高度上增长以完全显示它.
是否有任何与ListView相关的问题以及我可能错过的项目布局和项目高度?
更多观察:
出于测试目的,我现在已经将列表项布局简化为仅包含根LinearLayout和ImageView.当我将LinearLayout高度设置为例如200dip并将ImageView设置为fill_parent时,我原本期望ImageView增长直到达到其父级设置的200dip限制.
但是,图像将只是与其位图资源一样高(就好像我已将其设置为wrap_content)并且整个列表项将具有相同的高度(即,就好像我已将其设置为wrap_content一样).
但是,如果我将图像高度设置为例如200dip,则列表项的高度将增加,项目布局也将增加.
换句话说,完全忽略列表项布局的layout_height,因此除了硬编码像素值之外,ImageView上的任何高度值也是如此.