web-dev-qa-db-ja.com

android

enter image description here

この画像のようなレイアウトXMLファイルから画像を半分に重ねるにはどうすればよいですか。

7
Asad

単にRealtiveLayoutと負のマージンを使用できます

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:id="@+id/activity_landing"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:background="@color/screen_background">


    <ImageView
        Android:background="@color/black"
        Android:id="@+id/img_background"
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:src="@mipmap/ic_launcher" />

    <ImageView
        Android:layout_width="80dp"
        Android:layout_height="80dp"
        Android:layout_below="@+id/img_background"
        Android:layout_centerHorizontal="true"
        Android:layout_marginTop="-40dp"<!-- negative margin to half of height -->
        Android:src="@mipmap/ic_launcher" />

</RelativeLayout>
12
N J

FrameLayoutは、この機能を実行するためにより最適化されています。オーバーヘッドが少なくて済みます。

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:id="@+id/activity_landing"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
   >


    <ImageView
        Android:id="@+id/img_background"
        Android:layout_width="match_parent"
        Android:layout_height="500dp"
        Android:src="@mipmap/ic_launcher"
        Android:background="@color/colorPrimary"/>

    <ImageView
        Android:layout_width="160dp"
        Android:layout_height="160dp"
        Android:layout_below="@+id/img_background"
        Android:layout_gravity="bottom|center_horizontal"
        Android:src="@mipmap/ic_launcher"
        Android:background="@color/cardview_dark_background"/>

</FrameLayout>
0
kanduken

これを試してみてください、それはこのように見えます enter image description here

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    Android:orientation="vertical"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent">

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

        <RelativeLayout
            Android:layout_width="match_parent"
            Android:layout_height="0dp"
            Android:layout_weight="1">

            <de.hdodenhof.circleimageview.CircleImageView
                Android:id="@+id/profile_image"
                Android:layout_width="96dp"
                Android:layout_height="96dp"
                Android:src="@drawable/cc"
                app:civ_border_width="2dp"
                app:civ_border_color="#FF000000"
                Android:layout_centerInParent="true"
                />

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

                <FrameLayout
                    Android:layout_width="match_parent"
                    Android:layout_height="0dp"
                    Android:layout_weight="1">
                    <ImageView
                        Android:layout_width="match_parent"
                        Android:layout_height="match_parent"
                        Android:alpha="0.4"
                        Android:src="@drawable/a123123t"/>

                </FrameLayout>

                <FrameLayout
                    Android:layout_width="match_parent"
                    Android:layout_height="0dp"
                    Android:layout_weight="1">
                    <!--blank space-->

                </FrameLayout>


            </LinearLayout>

        </RelativeLayout>
        <LinearLayout
            Android:layout_width="match_parent"
            Android:layout_height="0dp"
            Android:layout_weight="1"
            Android:orientation="vertical">

            <LinearLayout
                Android:layout_width="match_parent"
                Android:layout_height="0dp"
                Android:layout_weight="1"
                Android:orientation="horizontal">
                <FrameLayout
                    Android:layout_width="0dp"
                    Android:layout_weight="1"
                    Android:layout_height="match_parent">
                    <de.hdodenhof.circleimageview.CircleImageView
                        Android:id="@+id/profile_image1"
                        Android:layout_width="96dp"
                        Android:layout_height="96dp"
                        Android:src="@drawable/cc"
                        Android:padding="8dp"
                        Android:layout_gravity="center"
                        app:civ_border_width="2dp"
                        app:civ_border_color="#FF000000"
                        Android:layout_centerInParent="true"
                        />

                </FrameLayout>

                <FrameLayout
                    Android:layout_width="0dp"
                    Android:layout_weight="1"
                    Android:layout_height="match_parent">
                    <de.hdodenhof.circleimageview.CircleImageView
                        Android:id="@+id/profile_image2"
                        Android:layout_width="96dp"
                        Android:layout_height="96dp"
                        Android:src="@drawable/cc"
                        Android:padding="8dp"
                        Android:layout_gravity="center"
                        app:civ_border_width="2dp"
                        app:civ_border_color="#FF000000"
                        Android:layout_centerInParent="true"
                        />

                </FrameLayout>

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

                    <de.hdodenhof.circleimageview.CircleImageView
                        Android:id="@+id/profile_image3"
                        Android:layout_width="96dp"
                        Android:layout_height="96dp"
                        Android:src="@drawable/cc"
                        Android:padding="8dp"
                        Android:layout_gravity="center"
                        app:civ_border_width="2dp"
                        app:civ_border_color="#FF000000"
                        Android:layout_centerInParent="true"
                        />
                </FrameLayout>






            </LinearLayout>

            <LinearLayout
                Android:layout_width="match_parent"
                Android:layout_height="0dp"
                Android:layout_weight="1"
                Android:orientation="vertical">

                <Android.support.v4.widget.Space
                    Android:layout_width="match_parent"
                    Android:layout_height="0dp"
                    Android:layout_weight="1" />

                <Button
                    Android:layout_width="match_parent"
                    Android:layout_height="wrap_content"
                    Android:text="Edit Profile"/>
            </LinearLayout>

        </LinearLayout>



    </LinearLayout>

</LinearLayout>

依存関係の場合:

コンパイル 'de.hdodenhof:circleimageview:2.1.0'

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    xmlns:tools="http://schemas.Android.com/tools"
    Android:id="@+id/ll_mainProfile"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:background="@color/gradientLeft"
    Android:orientation="vertical"
    tools:context=".Activity.ProfileActivity">

    <Android.support.design.widget.AppBarLayout
        Android:id="@+id/appBarLayout"
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:theme="@style/AppTheme.AppBarOverlay">

        <Android.support.v7.widget.Toolbar
            Android:id="@+id/toolbar_profileActivity"
            Android:layout_width="match_parent"
            Android:layout_height="?attr/actionBarSize"
            Android:background="@drawable/side_nav_bar"
            app:popupTheme="@style/AppTheme.PopupOverlay"
            app:titleTextColor="@color/white" />

    </Android.support.design.widget.AppBarLayout>


    <ScrollView
        Android:layout_width="match_parent"
        Android:layout_height="match_parent">

        <RelativeLayout
            Android:id="@+id/layout"
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content">


            <ImageView
                Android:id="@+id/header_cover_image"
                Android:layout_width="match_parent"
                Android:layout_height="250dp"
                Android:background="?attr/selectableItemBackgroundBorderless"
                Android:scaleType="centerCrop"
                Android:src="@drawable/background" />

            <ImageView
                Android:id="@+id/img_profile"
                Android:layout_width="200dp"
                Android:layout_height="200dp"
                Android:layout_below="@+id/header_cover_image"
                Android:layout_centerHorizontal="true"
                Android:layout_gravity="center_horizontal"
                Android:layout_marginTop="-130dp"
                Android:elevation="5dp"
                Android:scaleType="centerCrop"
                Android:src="@drawable/ic_profile" />

            <RelativeLayout
                Android:id="@+id/profile_layout"
                Android:layout_width="match_parent"
                Android:layout_height="wrap_content"
                Android:layout_below="@+id/header_cover_image"
                Android:elevation="4dp"
                Android:paddingBottom="24dp">


                <ImageView
                    Android:id="@+id/img_editProfile"
                    Android:layout_width="wrap_content"
                    Android:layout_height="wrap_content"
                    Android:layout_alignParentEnd="true"
                    Android:layout_marginStart="16dp"
                    Android:layout_marginTop="20dp"
                    Android:layout_marginEnd="16dp"
                    Android:layout_marginBottom="30dp"
                    Android:clickable="true"
                    Android:src="@Android:drawable/ic_menu_edit"
                    Android:visibility="gone" />

                <LinearLayout
                    Android:layout_width="match_parent"
                    Android:layout_height="wrap_content"
                    Android:layout_below="@+id/img_editProfile"
                    Android:gravity="center_horizontal"
                    Android:orientation="vertical"
                    Android:layout_marginTop="80dp"
                    Android:paddingStart="20dp"
                    Android:paddingEnd="20dp">


                    <LinearLayout
                        Android:layout_width="match_parent"
                        Android:layout_height="wrap_content"
                        Android:orientation="horizontal"
                        Android:layout_marginBottom="10dp">

                        <EditText
                            Android:id="@+id/et_fnameProfile"
                            Android:layout_width="match_parent"
                            Android:layout_height="wrap_content"
                            Android:layout_weight="1"
                            Android:backgroundTint="@color/black_overlay"
                            Android:editable="true"
                            Android:hint="@string/hint_first_name"
                            Android:inputType="textPersonName"
                            Android:paddingStart="10dp"
                            Android:paddingEnd="10dp"
                            Android:textColor="@color/white"
                            Android:textColorHint="@color/white"
                            Android:textSize="18sp" />

                        <EditText
                            Android:id="@+id/et_lnameProfile"
                            Android:layout_width="match_parent"
                            Android:layout_height="wrap_content"
                            Android:layout_weight="1"
                            Android:backgroundTint="@color/black_overlay"
                            Android:editable="true"
                            Android:hint="@string/hint_last_name"
                            Android:inputType="textPersonName"
                            Android:paddingStart="10dp"
                            Android:paddingEnd="10dp"
                            Android:textColor="@color/white"
                            Android:textColorHint="@color/white"
                            Android:textSize="18sp" />

                    </LinearLayout>

                    <LinearLayout
                        Android:layout_width="match_parent"
                        Android:layout_height="wrap_content"
                        Android:orientation="horizontal"
                        Android:layout_marginBottom="10dp">
                    <EditText
                        Android:id="@+id/et_countryCodeProfile"
                        Android:layout_width="match_parent"
                        Android:layout_height="wrap_content"
                        Android:layout_weight="1"
                        Android:backgroundTint="@color/black_overlay"
                        Android:editable="true"
                        Android:hint="@string/hint_country_code"
                        Android:inputType="number"
                        Android:paddingStart="10dp"
                        Android:paddingEnd="10dp"
                        Android:textColor="@color/white"
                        Android:textColorHint="@color/white"
                        Android:textSize="18sp" />


                    <EditText
                        Android:id="@+id/et_mobileNoProfile"
                        Android:layout_width="match_parent"
                        Android:layout_height="wrap_content"
                        Android:layout_weight="1"
                        Android:backgroundTint="@color/black_overlay"
                        Android:editable="true"
                        Android:hint="@string/hint_mobile_no"
                        Android:inputType="number"
                        Android:paddingStart="10dp"
                        Android:paddingEnd="10dp"
                        Android:textColor="@color/white"
                        Android:textColorHint="@color/white"
                        Android:textSize="18sp" />
                    </LinearLayout>
                </LinearLayout>

                <ProgressBar
                    Android:id="@+id/progress_profile"
                    Android:layout_width="wrap_content"
                    Android:layout_height="wrap_content"
                    Android:layout_centerInParent="true" />
            </RelativeLayout>

        </RelativeLayout>

    </ScrollView>

</LinearLayout>
0
Rushabh Shah

これはRelativeLayoutで簡単に実現できますが、CoordinatorLayoutとその機能について調べる必要があります。

0
Pushpendra

これを試してみてください

<RelativeLayout
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:background="@color/layout_background">
        <ImageView
            Android:id="@+id/img_background"
            Android:layout_width="match_parent"
            Android:layout_height="108dp"
            Android:background="@color/up"
            Android:src="@mipmap/ic_launcher" />

        <de.hdodenhof.circleimageview.CircleImageView
            Android:id="@+id/nav_header_view_profilePic"
            Android:layout_width="108dp"
            Android:layout_height="108dp"
            Android:layout_below="@+id/img_background"
            Android:src="@drawable/profile"
            Android:layout_marginTop="-54dp"
            Android:layout_centerHorizontal="true"
            />
    </RelativeLayout>
0
Sai Gopi N

マージントップをマイナス(-)値で設定する必要があります。画像ビューが他のビューとオーバーラップします。

0
Jaimin Thakkar
<RelativeLayout
                Android:layout_width="@dimen/_90sdp"
                Android:layout_height="@dimen/_90sdp">

                <ImageView
                    Android:id="@+id/bg"
                    Android:layout_width="match_parent"
                    Android:layout_height="@dimen/_90sdp"
                    Android:background="@color/profile_bg"
                    Android:scaleType="fitXY" />

                <ImageView
                    Android:id="@+id/img_user"
                    Android:layout_width="@dimen/_80sdp"
                    Android:layout_height="@dimen/_80sdp"
                    Android:layout_below="@+id/bg"
                    Android:layout_centerHorizontal="true"
                    Android:layout_marginTop="@dimen/_minus50sdp"
                    Android:src="@drawable/place_holder_profile"/>
    </RelativeLayout>

この依存関係を使用してコンパイルします 'com.intuit.sdp:sdp-Android:1.0.2' https://github.com/intuit/sdp

0
Vishal Sojitra