我们使用Recycler View实现了动物医院列表,并使用模拟器执行。但是,如果您按图中所示滚动,则差距会更大。enter image description here
什么样的问题?是布局问题吗?如果你能告诉我答案,我将不胜感激。
对应xml代码:
hospital_design.xml(这是“回收站视图”设计屏幕。)
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/listEdit_tv"
android:layout_width="134dp"
android:layout_height="91dp"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_marginStart="2dp"
android:layout_marginTop="17dp"
android:layout_marginEnd="260dp"
android:layout_marginBottom="726dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0"
app:srcCompat="@drawable/nuribom" />
<TextView
android:id="@+id/title_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginStart="135dp"
android:layout_marginTop="23dp"
android:text="누리봄 동물병원"
android:textColor="@color/black"
android:textSize="15dp" />
<TextView
android:id="@+id/addr_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/title_tv"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginStart="135dp"
android:layout_marginTop="54dp"
android:text="서울특별시 종로구 사직로12길 2" />
<TextView
android:id="@+id/phone_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/addr_tv"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginStart="136dp"
android:layout_marginTop="86dp"
android:text="02-735-7530" />
<TextView
android:id="@+id/guri_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/addr_tv"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_marginTop="86dp"
android:layout_marginEnd="64dp"
android:text="491m" />
</RelativeLayout>
字符串
activity_hospital.xml(这是动物医院列表屏幕,您可以在其中看到Recycler视图。)
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageButton
android:id="@+id/hos_back"
style="?android:borderlessButtonStyle"
android:layout_width="60dp"
android:layout_height="wrap_content"
app:srcCompat="@drawable/baseline_arrow_back_24" />
<TextView
android:id="@+id/textView16"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginStart="67dp"
android:layout_marginTop="13dp"
android:text="주변 병원"
android:textColor="@color/black"
android:textSize="15dp"
android:textStyle="bold" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/hospital_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/hos_back"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true"
android:layout_alignParentBottom="true"
android:layout_marginStart="0dp"
android:layout_marginTop="61dp"
android:layout_marginEnd="0dp"
android:layout_marginBottom="4dp" />
</RelativeLayout>
型
所有的布局都使用了相对布局。如果你能告诉我怎么做,我会很感激的。
1条答案
按热度按时间ntjbwcob1#
RecylerView
重复您的列表项布局定义的任何内容。目前,列表项被定义为全屏高度,因此每个项目都全屏显示,因此只有在滚动后才能看到其他项目。您应该将列表项更改为仅采用所需的高度。将hospital_design.xml布局的布局高度更改为wrap_content
。字符串
其次,我也看到了一些布局上的问题。
型
在这里,你的
ImageView
你已经从底部给出了保证金,这是不需要的,因为它是相对于顶侧对齐.你应该删除这一点,以及.然后你的列表项将只需要的高度.