如何为Android获取此特定的屏幕布局?

时间:2017-02-09 20:35:48

标签: android android-layout

布局代码:

Layout Code

所以基本上我希望A的高度是Android屏幕的一半而B在A的顶部左上方。所以A就像一个背景图像,B就是你可以说是一张像面对例如。我怎么得到这个?

这是我到目前为止所做的,但它似乎没有成功?也许我使用Relativelayout不正确?我需要一些像div这样的容器。我假设如果我将它包装在relativelayout或类似div的东西中它会解决但却没有。

<LinearLayout
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="0.5">

    <ImageView
        android:id="@+id/bground"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="fitXY"
        android:src= "@drawable/background" />

    <ImageView
        android:id="@+id/profileimage"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:src= "@drawable/face" />

    </RelativeLayout>
</LinearLayout>

2 个答案:

答案 0 :(得分:2)

试试这个:使用Framelayout进行imageview

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:weightSum="2">

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1">

        <ImageView
            android:id="@+id/bground"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#ff574f" />

        <ImageView
            android:id="@+id/profileimage"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_gravity="top|left"
            android:background="#32cd32" />

    </FrameLayout>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1">

    </FrameLayout>
</LinearLayout>

android:src用于图片

enter image description here

答案 1 :(得分:0)

您只需使用RelativeLayout即可轻松实现。

<RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="0.5">

    <ImageView
        android:id="@+id/bground"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="fitXY"
        android:src= "@drawable/background" />

    <!-- You need to add the profile image view after the background view -->
    <!-- so that it is placed above the background. -->
    <!-- Lock the size for profile, don't fill the whole screen -->
    <ImageView
        android:id="@+id/profileimage"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:src= "@drawable/face" />

 </RelativeLayout>

您还可以将android:layout_alignParentTop="true"android:layout_alignParentLeft="true"用于 profileimage 视图,使其位于RelativeLayout的左上角。