一个布局在另一个上面?

时间:2013-04-07 15:24:23

标签: java android xml

我需要一个大图像来获取所有的高度和大约80%的高度,我需要一堆小图像,而不是那个大图像。两者都需要从左上角开始。大图像将不可见,因为小图像当然会覆盖它。这是小图像应该是什么样子,这没关系:

enter image description here

在他们之下我需要一个大图像。我尝试了两种线性布局,但它没有用。这36个小图像放置在6个水平线性布局中。这是我的xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@drawable/background" >

   <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib7"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib8"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib9"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib10"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib11"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib12"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib13"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib14"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib15"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib16"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib17"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib18"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib19"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib20"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib21"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib22"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib23"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib24"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib25"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib26"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib27"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib28"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib29"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib30"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib31"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib32"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib33"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib34"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib35"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib36"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

    <Button
        android:id="@+id/bIzlazCigle"
        android:layout_width="60dp"
        android:layout_height="40dp"
        android:layout_marginLeft="10dp"
        android:background="@drawable/buttons_final"
        android:text="Izlaz"
        android:textSize="19sp"
        android:padding="0dp"
        android:textColor="#ffffff" />

    <Button
        android:id="@+id/bKonacnoCigle"
        android:layout_width="180dp"
        android:layout_height="40dp"
        android:layout_marginLeft="15dp"
        android:background="@drawable/buttons_final"
        android:text="Konačno rešenje!"
        android:padding="0dp"
        android:textSize="19sp"
        android:textColor="#ffffff" />

    </LinearLayout>


</LinearLayout>

4 个答案:

答案 0 :(得分:1)

尝试使用RelativeLayout

<RelativeLayout>
    <ImageView (or whatever, for background image) />

    <LinearLayout>  <-- this here is the XML you posted
        <LinearLayout>
            <ImageButton/>
            ...
        ...
     </LinearLayout>


</RelativeLayout>

如果背景(作为ImageView)和LinearLayout处于同一深度且RelativeLayout的两个孩子都在一起,则它们将叠放在彼此之上。

您可以将RelativeLayout替换为FrameLayout,但不要因为View有更多的构建开销,而您没有绘制Fragment所以你不要需要它。

答案 1 :(得分:0)

尝试FrameLayout,用它替换外部LinearLayout。

答案 2 :(得分:0)

你应该尝试使用Frame Layout - &gt; http://developer.android.com/reference/android/widget/FrameLayout.html

创建所需视图的方式是创建包含大图像的布局(例如线性布局),然后将其添加到框架布局,然后创建包含所有小图像然后添加的另一个布局(例如线性布局)它再次到了框架布局,所以带有小图像的布局将被放置在具有大图像的布局前面

我希望这可以回答你的问题,但如果你有另外一个关于我答案的问题,可以在评论中随意提问:)

答案 3 :(得分:0)

好的,这是解决方案,如果有人需要它:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@drawable/background" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
        <ImageView
            android:id="@+id/ivSlika"
            android:layout_width="fill_parent"
            android:layout_height="398dp"
            android:background="@drawable/tesla" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib7"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib8"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib9"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib10"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib11"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib12"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib13"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib14"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib15"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib16"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib17"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib18"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib19"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib20"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib21"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib22"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib23"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib24"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib25"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib26"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib27"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib28"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib29"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib30"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/ib31"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib32"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib33"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib34"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib35"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />

        <ImageButton
            android:id="@+id/ib36"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@android:drawable/btn_star" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/bIzlazCigle"
            android:layout_width="60dp"
            android:layout_height="40dp"
            android:layout_marginLeft="10dp"
            android:background="@drawable/buttons_final"
            android:padding="0dp"
            android:text="Izlaz"
            android:textColor="#ffffff"
            android:textSize="19sp" />

        <Button
            android:id="@+id/bKonacnoCigle"
            android:layout_width="180dp"
            android:layout_height="40dp"
            android:layout_marginLeft="15dp"
            android:background="@drawable/buttons_final"
            android:padding="0dp"
            android:text="Konačno rešenje!"
            android:textColor="#ffffff"
            android:textSize="19sp" />
    </LinearLayout>

    </LinearLayout>

</FrameLayout>