如何动态设置RecyclerView项目高度



我想让recyclerview项目保持相同的宽高比在任何屏幕(宽高比是8:5);那么如何动态设置recyclerview项目的高度?

如果你想以编程方式设置它的宽度和高度,你需要使用ViewGroup。LayoutParams

ViewGroup.LayoutParams layoutParams= recyclerview.getLayoutParams();
layoutParams.height = height;
layoutParams.widht = width
recyclerview.setLayoutParams(layoutParams);

您需要根据您的需要将heightwidth传递给它。我使用ViewGroup.LayoutParams,但你可以使用任何ViewGroup你把回收视图。如果它在LinearLayout中,你会使用LinearLayout。LayoutParams等

让我知道它是否对你有效,如果是的话,记得投票/选择正确的答案,干杯

您可以使用https://android-developers.googleblog.com/2017/02/build-flexible-layouts-with.html

示例如下:

'com.google.android:flexbox:2.0.1'到你的依赖项。

这是你的recycleview配置:

val layoutManager = FlexboxLayoutManager(this)
layoutManager.flexDirection = FlexDirection.ROW
layoutManager.justifyContent = JustifyContent.FLEX_START
recyclerview.layoutManager = layoutManager

您也可以查看此要点https://gist.github.com/siifii/3edd8cd2d4f5a9b4672b9976c0c55ff4

最新更新