Android 如何根据屏幕配置正确设置交错网格的列数/单元格大小

Android 如何根据屏幕配置正确设置交错网格的列数/单元格大小,android,configuration,screen,staggered-gridview,etsy,Android,Configuration,Screen,Staggered Gridview,Etsy,我使用的是Etsy,希望通过提供适当的列数和单元格大小来支持不同的屏幕。网格的每个单元格都包含一个ImageView和一些文本。 根据官方文档,我创建了以下文件夹结构: values/ integers.xml values-small/ integers.xml values-large/ integers.xml values-xlarge/ integers.xml integers.xml的内容如下:对于每个配置,我只需更改值: <?xml ver

我使用的是Etsy,希望通过提供适当的列数和单元格大小来支持不同的屏幕。网格的每个单元格都包含一个ImageView和一些文本。 根据官方文档,我创建了以下文件夹结构:

values/
    integers.xml
values-small/
    integers.xml
values-large/
    integers.xml
values-xlarge/
    integers.xml
integers.xml的内容如下:对于每个配置,我只需更改值:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <integer name="grid_column_count">2</integer>
</resources>
我的问题是,如何根据屏幕密度选择不同大小的图像的正确大小:61*91、120*178、180*266、510*755以下载和显示

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >
    <com.etsy.android.grid.StaggeredGridView
        android:id="@+id/grid_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:item_margin="8dp"
        app:column_count="@integer/grid_column_count" />

    <ViewStub
        android:id="@android:id/empty"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout="@layout/empty_view"/>

</FrameLayout>