如何在没有硬编码的情况下制作这种相对布局?

时间:2013-02-08 17:27:59

标签: android xml button textview relativelayout

所以我在这个布局上有11个按钮和1个TextView,它是这样的:

:button: :button: :button:
:button: :button: :button:
:button: :button: :button:
:centered textview:
:button: :button: two of these fills width

现在我做了它,以便重力居中,但我想要的是按钮用按钮填充屏幕而不是背景。有没有办法用相对布局做这个而不是硬编码按钮?

这是我的代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/tictactoe"
android:layout_width="fill_parent";
android:layout_height="fill_parent"
android:background="#3399CC"
android:gravity="center"
android:orientation="vertical" >

<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    tools:ignore="UselessParent" >

    <Button
        android:id="@+id/top_left"
        android:layout_width="105dp"
        android:layout_height="105dp"
        android:textSize="55dp" />

    <Button
        android:id="@+id/top"
        android:layout_width="105dp"
        android:layout_height="105dp"
        android:layout_toRightOf="@id/top_left"
        android:textSize="55dp" />

    <Button
        android:id="@+id/top_right"
        android:layout_width="105dp"
        android:layout_height="105dp"
        android:layout_toRightOf="@id/top"
        android:textSize="55dp" />

    <Button
        android:id="@+id/left"
        android:layout_width="105dp"
        android:layout_height="105dp"
        android:layout_below="@id/top_left"
        android:textSize="55dp" />

    <Button
        android:id="@+id/center"
        android:layout_width="105dp"
        android:layout_height="105dp"
        android:layout_below="@id/top_left"
        android:layout_toRightOf="@id/left"
        android:textSize="55dp" />

    <Button
        android:id="@+id/right"
        android:layout_width="105dp"
        android:layout_height="105dp"
        android:layout_below="@id/top_left"
        android:layout_toRightOf="@id/center"
        android:textSize="55dp" />

    <Button
        android:id="@+id/bottom_left"
        android:layout_width="105dp"
        android:layout_height="105dp"
        android:layout_below="@id/left"
        android:textSize="55dp" />

    <Button
        android:id="@+id/bottom"
        android:layout_width="105dp"
        android:layout_height="105dp"
        android:layout_below="@id/left"
        android:layout_toRightOf="@id/bottom_left"
        android:textSize="55dp" />

    <Button
        android:id="@+id/bottom_right"
        android:layout_width="105dp"
        android:layout_height="105dp"
        android:layout_below="@id/left"
        android:layout_toRightOf="@id/bottom"
        android:textSize="55dp" />

    <TextView
        android:id="@+id/result"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/bottom_left"
        android:layout_centerHorizontal="true"
        android:text="@string/click"
        android:textColor="#99FF00"
        android:textSize="20dp" />

    <Button
        android:id="@+id/exit"
        android:layout_width="160dp"
        android:layout_height="90dp"
        android:layout_below="@id/result"
        android:text="@string/menu"
        android:textSize="20dp" />

    <Button
        android:id="@+id/playagain"
        android:layout_width="160dp"
        android:layout_height="90dp"
        android:layout_below="@id/result"
        android:layout_toRightOf="@id/exit"
        android:text="@string/playAgain"
        android:textSize="20dp" />
</RelativeLayout>
</RelativeLayout>

0 个答案:

没有答案