5

StaggeredGridView を ListView アイテムに配置すると、高さがゼロになります。この回答のように onMeasure を変更しようとしましたが、効果がありません。

変更された StaggeredGridView:

public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    int expandSpec = MeasureSpec.makeMeasureSpec(MEASURED_SIZE_MASK,
                      MeasureSpec.AT_MOST);
    super.onMeasure(widthMeasureSpec, expandSpec);

    ViewGroup.LayoutParams params = getLayoutParams();
    params.height = getMeasuredHeight();
}

リスト アイテムのレイアウト:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <com.playday.app.views.InfiniteGridView
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/pics"
        android:layout_marginTop="@dimen/small"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:item_margin="2dp"
        app:column_count="4" />
</FrameLayout>

誰でもこの問題を解決できますか?

4

0 に答える 0