我一直在为 Android 开发一款记忆游戏,但我的布局有点问题。
对于每种类型的游戏(简单、中等和困难)我都有 3 种不同的布局,我在屏幕上需要匹配 4x4、5x5 或 6x6 图像。
我正在使用 ImageAdapter 来获取图像并填充用于在屏幕上显示图像的 GridView。
这是 Easy 游戏的 XML 文件(4x4 图像):
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/mainBar"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:gravity="center">
<TextView
android:id="@+id/player1"
android:layout_alignParentLeft="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Player1 - "
/>
<TextView
android:id="@+id/player1Score"
android:layout_toRightOf="@+id/player1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="00 "
/>
<TextView
android:id="@+id/player2Score"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="00"
/>
<TextView
android:id="@+id/player2"
android:layout_toLeftOf="@+id/player2Score"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Player2 - "
/>
<Chronometer
android:id="@+id/time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:text="02:00" />
</RelativeLayout>
<GridView
android:id="@+id/gridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:layout_below="@id/mainBar"
android:gravity="center_vertical|center_horizontal"
android:numColumns="4">
</GridView>
</RelativeLayout>
唯一的问题是,当我在具有小屏幕尺寸的模拟器上运行应用程序时,图像看起来会被拉伸......(参见 IMG#1)......当我真的想要看起来像这样的东西时......(见 IMG#2),在每个屏幕上,无论大小!
我正在使用不同的资源(ldpi、mdpi、hdpi 的不同图像)。