Основы дизайна Android UI - PullRequest
0 голосов
/ 28 марта 2011
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="200px"
    android:background="@layout/roundedshape"
    android:id="@+id/mainLayout"> 

    <Gallery xmlns:android="http://schemas.android.com/apk/res/android" 
        android:id="@+id/gallery"
        android:layout_width="fill_parent"
        android:layout_height="100px" />

    <LinearLayout android:gravity="top"
        android:id="@+id/gallerytext"
        android:layout_width="match_parent"
        android:layout_height="50px"
        android:layout_below="@+id/gallery"
        android:layout_centerHorizontal="true">
        <TextView android:text="TextView"
            android:id="@+id/taskname"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"></TextView>
    </LinearLayout>
    <LinearLayout android:gravity="top"
        android:layout_width="match_parent"
        android:layout_height="50px"
        android:layout_below="@+id/gallerytext"
        android:layout_centerHorizontal="true" >
        <Button android:id="@+id/button_left"
            android:layout_width="27px"
            android:layout_height="27px"></Button>
        <Button android:text="Add"
            android:id="@+id/button_add"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"></Button>
        <Button android:text="Edit"
            android:id="@+id/button_edit"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"></Button>
        <Button android:id="@+id/button_right"
            android:layout_width="27px"
            android:layout_height="27px"></Button>
    </LinearLayout>
</RelativeLayout>

Отредактировано

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="200px" android:background="@layout/roundedshape"> 

<Gallery xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/gallery"
    android:layout_width="fill_parent"
    android:layout_height="100px"
/>

<TextView android:layout_below="@+id/gallery" android:text="TextView" android:id="@+id/taskname" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>

<Button android:id="@+id/button_left" android:layout_below="@+id/taskname" android:layout_width="27px" android:layout_height="27px" ></Button>
<Button android:text="Add" android:id="@+id/button_add" android:layout_below="@+id/taskname" android:layout_toRightOf="@+id/button_left" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
<Button android:text="Edit" android:id="@+id/button_edit" android:layout_below="@+id/taskname" android:layout_toRightOf="@+id/button_add" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
<Button android:id="@+id/button_right" android:layout_below="@+id/taskname" android:layout_toRightOf="@+id/button_edit" android:layout_width="27px" android:layout_height="27px"></Button>

Когда я ставлю фон для RelativeLayout, он покрывает два LinerLayouts.

Как сделать так, чтобы цвет фона и два LinearLayout были видны сверху? Или мое восприятие неверно?

Ответы [ 2 ]

1 голос
/ 28 марта 2011

В вашем макете нет ничего плохого.Если вы установите фон RelativeLayout на #FFFFFFFF (белый), то это именно то, что происходит.Фон (в том числе, где LinearLayouts ) становится белым.Но LinearLayouts находятся над RelativeLayout - вы по-прежнему видите кнопки и любой текст, отображаемый в LinearLayouts .Если вы установите фон LinearLayouts в разные цвета, вы увидите, что это отражено в макете - они фактически располагаются поверх RelativeLayout .

0 голосов
/ 14 апреля 2019

вы не ошиблись поскольку относительный макет является родительским классом в этом файле макета, поэтому фон относительного макета по умолчанию покрывает оба дочерних класса.

если вы хотите создать собственный фон в линейном макете, пишите в теге линейного макета

android:background = "#000000"

или

android:background="@drawable/ic_launcher_background"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...