我正在使用包含多行项目的Horizontal RecyclerView。我已使用 FlexboxLayoutManager 将所有项目拆分为多行,但 View 未按我想要的方式创建。它自动削减TextView的字符数
我想要如下图所示的 View
我的代码:
XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/dp4"
android:layout_marginBottom="@dimen/dp4">
<TextView
android:id="@+id/btnProduct"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp30"
android:layout_gravity="center"
android:background="@drawable/bg_white_box"
android:gravity="center"
android:maxLines="1"
android:padding="@dimen/dp5"
android:singleLine="true"
android:text="Denim Jeans Outfit goes"
android:textAlignment="center"
android:textAllCaps="false" />
代码:
RecommendProductAdapter recommendProductAdapter = new RecommendProductAdapter(getActivity(), recommendedProductList, SearchProductFragment.this);
FlexboxLayoutManager layoutManager = new FlexboxLayoutManager(getActivity());
layoutManager.setFlexDirection(FlexDirection.ROW);
layoutManager.setJustifyContent(JustifyContent.FLEX_START);
listRecommend.setLayoutManager(layoutManager);
listRecommend.setAdapter(recommendProductAdapter);
我没有指定 4 列,但每次都会得到 4 列。
如果我将 TextView 的 宽度设置为“wrap_content”,则下图。我也没有指定字符长度,但它会将我的文本剪切为...。我想要全文。
如果我将 TextView 的宽度指定为“176dp”,那么下面是输出
请帮忙做点什么。
最佳答案
您必须将flex-wrap
设置为wrap
This attribute controls whether the flex container is single-line or multi-line, and the direction of the cross axis. Possible values are:
- nowrap(默认)
- 换行
- wrap_reverse
关于android - 水平 RecylerView 多行显示不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59767111/