【发布时间】:2026-01-10 03:05:01
【问题描述】:
我是 android 布局的新手,在我的应用中遇到以下问题:
这是片段的布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="0dp"
android:layout_margin="0dp">
<ListView
android:id="@+id/listview_books_to_issue"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.87"
/>
<ImageView
android:id="@+id/imageView_empylist"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.87"
android:src="@drawable/ic_empty_flask"
android:visibility="gone"/>
<View
style="@style/Divider"/>
<Button
android:id="@+id/add_newbook_upcoming_issues"
android:layout_width="match_parent"
android:text="New"
android:paddingTop="5dp"
android:layout_height="0dp"
android:layout_weight="0.13"
android:drawableTop="@drawable/ic_add"
android:background="?android:attr/selectableItemBackground"/>
当 ListView(listview_books_to_issue) 为空时,我打开 ImageView(imageView_empylist) 的可见性,到目前为止,按钮 add_newbook_upcoming_issues 看起来不错,但是当列表视图被填充时,即使只有一个项目,按钮也会被隐藏部分在底部。
这是用于填充列表的项目的布局代码。
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/textview_upcoming_issues_book_title"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.3"
android:textAlignment="center"
android:gravity="center_vertical"
android:text="Title"/>
<TextView
android:id="@+id/textview_upcoming_issues_book_author"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.3"
android:textAlignment="center"
android:gravity="center_vertical"
android:text="By:-Author"/>
<TextView
android:id="@+id/textview_to_issue_date"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.3"
android:textAlignment="center"
android:gravity="center_vertical"
android:text="to be issued on"/>
<TextView
android:id="@+id/textview_upcoming_issues_book_no"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.1"
android:visibility="gone"/>
</LinearLayout>
不知道是什么原因造成的,有什么帮助吗? 在此先感谢:)
PS:我使用权重而不是高度,以便我可以为项目设置固定的屏幕比例。如果这是导致问题的原因,请提及正确的处理方法。
EDIT在这里找到了解决方案Limit height of ListView on Android
【问题讨论】:
标签: android android-layout listview