ListView 将底行切成两半
ListView is slicing the bottom row in half
由于某些原因,ListView 无法完全显示内容。底部每次都被切断一半。同一个应用程序中的其他 ListView 也会发生这种情况。
这就是这个应用程序中发生的事情。让我们看到列表视图的应用程序上的 window 对于列表视图本身来说是两个小的。
这是它在应用中的样子:
这是此布局的 XML:
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F5F5F5"
android:columnCount="7"
android:rowCount="3">
<ImageView
android:id="@+id/imgcolorsquarehat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_gravity="center_horizontal|center_vertical"
android:src="@drawable/bluesquare" />
<TextView
android:id="@+id/Numberhat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_gravity="center_horizontal|center_vertical"
android:layout_row="0"
android:text="49"
android:textColor="#FFFFFF"
android:textSize="30sp" />
<TextView
android:id="@+id/TitleText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:layout_columnSpan="4"
android:layout_gravity="center_horizontal"
android:layout_row="0"
android:padding="10dp"
android:text="Computer Science BSc"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#000000"
android:textSize="25sp" />
<SeekBar
android:id="@+id/seekBar1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/imgcolorsquarehat"
android:layout_column="0"
android:layout_columnSpan="6"
android:layout_gravity="center_horizontal"
android:layout_row="1"
android:paddingTop="10dp"
android:progressDrawable="@drawable/red_progress"
android:thumb="@drawable/red_thumb" />
<ListView
android:id="@+id/list_year"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_columnSpan="6"
android:layout_gravity="top"
android:layout_margin="10dp"
android:layout_row="2"
android:background="#FFFFFF"
android:dividerHeight="5dp" />
<CheckBox
android:id="@+id/padlock1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="5"
android:layout_gravity="center_horizontal|center_vertical"
android:layout_row="0"
android:background="@drawable/padlock_button"
android:button="@android:color/transparent" />
</GridLayout>
编辑:见下图,ListView 认为它的边界应该在哪里。
我相信 ListView
上的 android:layout_margin="10dp"
是罪魁祸首。尝试删除它,看看会发生什么。
您不应该在 GridView 中使用 ListView,它们都是 AbsListView 的子类。
例如,您可以使用 LinearLayout。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F5F5F5"
android:columnCount="7"
android:padding="10dp"
android:orientation="vertical"
android:rowCount="3">
...
尝试使用和更改 android:layout_margin 和 android:padding 属性,尝试使用多个值来调整屏幕上的视图,或者更好的是,调整子视图的高度。
由于某些原因,ListView 无法完全显示内容。底部每次都被切断一半。同一个应用程序中的其他 ListView 也会发生这种情况。
这就是这个应用程序中发生的事情。让我们看到列表视图的应用程序上的 window 对于列表视图本身来说是两个小的。
这是它在应用中的样子:
这是此布局的 XML:
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F5F5F5"
android:columnCount="7"
android:rowCount="3">
<ImageView
android:id="@+id/imgcolorsquarehat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_gravity="center_horizontal|center_vertical"
android:src="@drawable/bluesquare" />
<TextView
android:id="@+id/Numberhat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_gravity="center_horizontal|center_vertical"
android:layout_row="0"
android:text="49"
android:textColor="#FFFFFF"
android:textSize="30sp" />
<TextView
android:id="@+id/TitleText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:layout_columnSpan="4"
android:layout_gravity="center_horizontal"
android:layout_row="0"
android:padding="10dp"
android:text="Computer Science BSc"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#000000"
android:textSize="25sp" />
<SeekBar
android:id="@+id/seekBar1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/imgcolorsquarehat"
android:layout_column="0"
android:layout_columnSpan="6"
android:layout_gravity="center_horizontal"
android:layout_row="1"
android:paddingTop="10dp"
android:progressDrawable="@drawable/red_progress"
android:thumb="@drawable/red_thumb" />
<ListView
android:id="@+id/list_year"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_columnSpan="6"
android:layout_gravity="top"
android:layout_margin="10dp"
android:layout_row="2"
android:background="#FFFFFF"
android:dividerHeight="5dp" />
<CheckBox
android:id="@+id/padlock1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="5"
android:layout_gravity="center_horizontal|center_vertical"
android:layout_row="0"
android:background="@drawable/padlock_button"
android:button="@android:color/transparent" />
</GridLayout>
编辑:见下图,ListView 认为它的边界应该在哪里。
我相信 ListView
上的 android:layout_margin="10dp"
是罪魁祸首。尝试删除它,看看会发生什么。
您不应该在 GridView 中使用 ListView,它们都是 AbsListView 的子类。 例如,您可以使用 LinearLayout。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F5F5F5"
android:columnCount="7"
android:padding="10dp"
android:orientation="vertical"
android:rowCount="3">
...
尝试使用和更改 android:layout_margin 和 android:padding 属性,尝试使用多个值来调整屏幕上的视图,或者更好的是,调整子视图的高度。