我是新的Android开发人员,并尝试使用eclipse IDE开发Android游戏。哪个有这样的游戏板
我只想将按钮放在有圆圈的位置。
我使用相对布局对xml中的按钮位置进行了硬编码,但由于屏幕大小不同,此解决方案无法正常工作
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/AbsoluteLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bani_qatar_board" >
<Button
android:id="@+id/btn_a8"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignLeft="@+id/btn_a1"
android:layout_below="@+id/btn_a1"
android:layout_marginTop="82dp"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_a7"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignLeft="@+id/btn_a8"
android:layout_alignParentBottom="true"
android:layout_marginBottom="7dp"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_b2"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_below="@+id/btn_a1"
android:layout_marginLeft="51dp"
android:layout_marginTop="14dp"
android:layout_toRightOf="@+id/btn_a1"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_b1"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBottom="@+id/btn_a8"
android:layout_alignLeft="@+id/btn_b2"
android:layout_marginBottom="2dp"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_b8"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_above="@+id/btn_a7"
android:layout_alignLeft="@+id/btn_b1"
android:layout_marginBottom="11dp"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_c2"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_below="@+id/btn_b2"
android:layout_marginLeft="52dp"
android:layout_marginTop="5dp"
android:layout_toRightOf="@+id/btn_b8"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_c1"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBottom="@+id/btn_a8"
android:layout_alignLeft="@+id/btn_c2"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_c8"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_above="@+id/btn_b8"
android:layout_alignLeft="@+id/btn_c1"
android:layout_marginBottom="7dp"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_b3"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBottom="@+id/btn_b2"
android:layout_alignLeft="@+id/btn_a2"
android:layout_marginBottom="4dp"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_c3"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_c2"
android:layout_alignBottom="@+id/btn_c2"
android:layout_alignLeft="@+id/btn_b3"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_c7"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_c8"
android:layout_alignBottom="@+id/btn_c8"
android:layout_alignLeft="@+id/btn_c3"
android:background="@drawable/blank"
android:focusable="true" />
<Button
android:id="@+id/btn_b7"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBottom="@+id/btn_b8"
android:layout_alignLeft="@+id/btn_c7"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_a6"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_a7"
android:layout_alignBottom="@+id/btn_a7"
android:layout_alignLeft="@+id/btn_b7"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_c4"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_c3"
android:layout_alignBottom="@+id/btn_c3"
android:layout_marginLeft="95dp"
android:layout_toRightOf="@+id/btn_c3"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_c5"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_c1"
android:layout_alignBottom="@+id/btn_c1"
android:layout_alignLeft="@+id/btn_c4"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_c6"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_c7"
android:layout_alignBottom="@+id/btn_c7"
android:layout_alignLeft="@+id/btn_c5"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_b4"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_b3"
android:layout_alignBottom="@+id/btn_b3"
android:layout_marginLeft="50dp"
android:layout_toRightOf="@+id/btn_c4"
android:background="@drawable/blank"
android:paddingBottom="9dp" />
<Button
android:id="@+id/btn_b5"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_c5"
android:layout_alignBottom="@+id/btn_c5"
android:layout_alignLeft="@+id/btn_b4"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_b6"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_b7"
android:layout_alignBottom="@+id/btn_b7"
android:layout_alignLeft="@+id/btn_b5"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_a3"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_above="@+id/btn_b2"
android:layout_alignParentRight="true"
android:layout_marginRight="13dp"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_a4"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_b5"
android:layout_alignBottom="@+id/btn_b5"
android:layout_alignLeft="@+id/btn_a3"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_a5"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignBaseline="@+id/btn_a6"
android:layout_alignBottom="@+id/btn_a6"
android:layout_alignLeft="@+id/btn_a4"
android:background="@drawable/blank" />
<Button
android:id="@+id/btn_a2"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_above="@+id/btn_b2"
android:layout_marginLeft="86dp"
android:layout_toRightOf="@+id/btn_c2"
android:background="@drawable/blank" />
<TextView
android:id="@+id/infoDisplay"
android:layout_width="175dp"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/btn_b1"
android:layout_toLeftOf="@+id/btn_c5"
android:gravity="center"
android:text="@string/text"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#000000" />
<Button
android:id="@+id/btn_a1"
android:layout_width="27dp"
android:layout_height="25dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="12dp"
android:layout_marginTop="63dp"
android:background="@drawable/blank" />
</RelativeLayout>`
输出是
问题:您可以清楚地看到圈子上没有显示按钮。
注意:我现在不想为此目的使用任何游戏引擎。我想在日食中开发这个游戏。
任何建议我如何将按钮完全放在圆圈上。提前谢谢。
答案 0 :(得分:0)
如果在不保留AR的情况下在两个维度上拉伸背景图像,则可以使用LinearLayout并通过为其分配layout_weight和隐藏填充视图来排列按钮。
但这可能非常繁琐,而且计算代码中的所有位置可能会更好。
答案 1 :(得分:0)
您还可以对relativeLayout的layout_height和layout_width进行硬编码。它的背景图片将自动调整为该布局大小。应该适用于每种显示尺寸。