1

我使用这个方法LINK生成了一个带有 GridLayoutManager 的 recyclerview 来自动跨栏,但是我没有为 holderview 制作一个方形虚拟布局,我的意图是使用 recyclerview 模仿一个画廊,

<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="100dp"
android:background="@color/white"
android:orientation="vertical"
android:padding="1dp">


<ImageView
    android:id="@+id/txt"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:adjustViewBounds="true"
    android:scaleType="centerCrop"/>

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="20dp"
    android:layout_gravity="center_horizontal|bottom"  
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true">

    <TextView
        android:id="@+id/card_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:ellipsize="end"
        android:singleLine="true"
        android:text="folder"
        android:textSize="12dp"
        android:textStyle="bold"/>

</FrameLayout>

4

1 回答 1

1

看看这个答案,但基本上你可以创建一个自定义 SquareRelativeLayout 然后覆盖 onMeasure 方法,这样它总是像这样的正方形:

@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    // Set a square layout.
    super.onMeasure(widthMeasureSpec, widthMeasureSpec);
}
于 2015-05-27T17:13:10.717 回答