在按钮旁边添加TextView?

时间:2015-12-15 10:29:00

标签: java android xml android-activity android-studio

我的布局中心有4个按钮。我只是想在四个按钮旁边添加一个textview(没有从中心移动四个按钮),如图所示(TextView应该在红色的位置):

[![在此处输入图像说明] [1]] [1]

现在,我有自己的线性布局的textview和他们自己的相对布局中的四个按钮,所有这些都在一个大的相对布局中。当我尝试将文本视图移动到按钮的左侧时,按钮会向右移动。我如何实现我所说明的内容?这是我的XML:

<?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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.ruchir.circleswithmap.MainActivity"
    android:id="@+id/layout"
    android:gravity="center"
    android:background="#010101">

    <LinearLayout
        android:id="@+id/text_container"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/relativeLayout"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="10dp"
        >


        <TextView

            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:text="20:00"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textSize="50sp"
            android:textColor="#fbfafa"

            android:id="@+id/timetext" />


    </LinearLayout>

    <RelativeLayout
        android:id="@+id/relativeLayout"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true">

    <ImageButton
        android:layout_width="150dp"
        android:layout_height="150dp"
        android:id="@+id/Blue"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:background="@drawable/bluesquare" />

    <ImageButton
        android:layout_width="150dp"
        android:layout_height="150dp"
        android:id="@+id/Green"
        android:layout_below="@+id/Blue"
        android:layout_alignLeft="@+id/Blue"
        android:layout_alignStart="@+id/Blue"
        android:background="@drawable/greensquare" />

    <ImageButton
        android:layout_width="150dp"
        android:layout_height="150dp"
        android:id="@+id/Red"
        android:layout_alignTop="@+id/Blue"
        android:layout_toRightOf="@+id/Blue"
        android:layout_toEndOf="@+id/Blue"
        android:background="@drawable/redsquare" />

    <ImageButton
        android:layout_width="150dp"
        android:layout_height="150dp"
        android:id="@+id/Purple"
        android:layout_alignBottom="@+id/Green"
        android:layout_alignLeft="@+id/Red"
        android:layout_alignStart="@+id/Red"
        android:background="@drawable/purplesquare" />

</RelativeLayout>

    </RelativeLayout>

1 个答案:

答案 0 :(得分:-1)

将textView放在一个Linearlayout中,将四个按钮放在另一个LinearLayout中,然后尝试水平权重对齐,然后在一行中可能会有效。

代码可以如下

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.ruchir.circleswithmap.MainActivity"
    android:id="@+id/layout"
    android:gravity="center"
    android:background="#010101"
    android:weightSum="100">

    <LinearLayout
        android:id="@+id/text_container"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/relativeLayout"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="10dp"
        android:layout_weight = "50"
        >


        <TextView

            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:text="20:00"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textSize="50sp"
            android:textColor="#fbfafa"

            android:id="@+id/timetext" />


    </LinearLayout>

    <RelativeLayout
        android:id="@+id/relativeLayout"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:layout_weight="50">

        <ImageButton
            android:layout_width="150dp"
            android:layout_height="150dp"
            android:id="@+id/Blue"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
             />

        <ImageButton
            android:layout_width="150dp"
            android:layout_height="150dp"
            android:id="@+id/Green"
            android:layout_below="@+id/Blue"
            android:layout_alignLeft="@+id/Blue"
            android:layout_alignStart="@+id/Blue"
             />

        <ImageButton
            android:layout_width="150dp"
            android:layout_height="150dp"
            android:id="@+id/Red"
            android:layout_alignTop="@+id/Blue"
            android:layout_toRightOf="@+id/Blue"
            android:layout_toEndOf="@+id/Blue"
             />

        <ImageButton
            android:layout_width="150dp"
            android:layout_height="150dp"
            android:id="@+id/Purple"
            android:layout_alignBottom="@+id/Green"
            android:layout_alignLeft="@+id/Red"
            android:layout_alignStart="@+id/Red"
             />

    </RelativeLayout>

</LinearLayout>
相关问题