java - 根据屏幕尺寸调整项目高度以适合其 RecyclerView

标签 java android xml android-layout

我有一个带有 height:match_parent 的 RecyclerView,它在适配器中以固定高度垂直显示 16 个项目。一切正常,除非涉及到不同的屏幕尺寸。在大屏幕上,显示 16 个项目后,底部还有一个空间,而在小屏幕手机上,它完全适合底部。我正在寻找一种方法,将列表项高度调整为 RecyclerView 高度,直到最后没有滚动。

查看下面的屏幕截图以获得更多说明

问题:

enter image description here

期望:

enter image description here

我的方法是将项目权重设置为 1,因此当渲染到 RecyclerView 16 次时,它们将在 RecyclerView 中共享相同的高度。不幸的是,这对我不起作用。

我的 RecyclerView:

<android.support.v7.widget.RecyclerView
     android:id="@+id/rv_morning"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:overScrollMode="never" />

我的适配器:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:background="@color/white"
    android:clickable="false"
    android:orientation="vertical">

    <TextView />

</LinearLayout>

最佳答案

您的问题的确切解决方案是 RecyclerView 的灵活布局管理器。

More about flexible layouts.

An example illustrating the use of flexible layouts.

关于java - 根据屏幕尺寸调整项目高度以适合其 RecyclerView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49693726/

相关文章:

java - 不幸的是应用程序已停止 Android 模拟器

java - 在java中向后排列数组

java - ClassNotFoundException : javax. ws.rs.client.ClientBuilder

java - 如何将 Paging 3 从 Kotlin Flow 移植到 Java? - 找不到 PagingDataFlow.create 函数

Android 如何在 Edittext 中获取选中的单词?

javascript - 如何用jquery创建xml文件

java - JMeter 运行 LoginThread 然后所有线程同时运行

android - 应用程序崩溃 - Web 服务没有返回

c# - 从 XML 中读取数据

android 数据库还是 xml/kml?