Android 如何通过设备保持图像比率?
我正在编写一个简单的纸牌游戏,但是我的模拟器和我自己的手机的图像不一样。 我尝试了Android 如何通过设备保持图像比率?,android,android-studio,Android,Android Studio,我正在编写一个简单的纸牌游戏,但是我的模拟器和我自己的手机的图像不一样。 我尝试了android:src=“@drawable/card\u a”和android:background=“@drawable/card\u a”,但没有成功。下面是一些屏幕截图来解释: -在android:src中,它显示非常小的图像 我希望在我的手机中的模拟器上看到相同的显示。问题似乎不是图像背景,而是包含此图像的视图。可能您应该在所有视图中使用android:weight=“1”,并将所有这些图像视图放置在水
android:src=“@drawable/card\u a”
和android:background=“@drawable/card\u a”
,但没有成功。下面是一些屏幕截图来解释:
-在android:src中,它显示非常小的图像
我希望在我的手机中的模拟器上看到相同的显示。问题似乎不是图像背景,而是包含此图像的视图。可能您应该在所有视图中使用
android:weight=“1”
,并将所有这些图像视图放置在水平方向的线性布局中。您可以在布局文件中添加android:scaleType=“FitInCenter”
。您可以像这样使用线性布局权重:
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weight_sum="5" >
<ImageView
android:id="@+id/card1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<ImageView
android:id="@+id/card2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<ImageView
android:id="@+id/card3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<ImageView
android:id="@+id/card4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<ImageView
android:id="@+id/card5"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
通过这种方式,您将始终获得5个相同宽度的视图。发布布局文件