繁体   English   中英

无法根据相对布局对齐imageview

[英]Not able to align imageview with respect to relative layout

以下是我正在尝试设计的屏幕,我正在使用CoordinatorLayout但无法按照屏幕快照中的方式将我的图像与RelativeLayout对齐。

在此处输入图片说明

以下是我的代码

<android.support.design.widget.CoordinatorLayout
        android:id="@+id/layoutDocumentVerification"
        android:layout_below="@+id/layoutTitles"
        android:layout_marginTop="16dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <RelativeLayout
            android:id="@+id/layoutContent"
            android:background="@drawable/drawable_rectangle_white_grey_border"
            android:padding="10dp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <ImageView
                android:id="@+id/imgDocVerification"
                android:layout_marginRight="10dp"
                app:srcCompat="@drawable/ic_document_verification"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <com.widgets.TextViewRobotoRegular
                android:id="@+id/lblDocVerify"
                android:layout_toRightOf="@+id/imgDocVerification"
                android:text="Document Verification"
                android:textSize="14sp"
                android:textColor="@color/ekyc_black"
                android:layout_marginTop="10dp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <com.widgets.TextViewRobotoLight
                android:id="@+id/lblUploadDoc"
                android:layout_toRightOf="@+id/imgDocVerification"
                android:layout_below="@+id/lblDocVerify"
                android:text="Please upload your documents"
                android:textSize="13sp"
                android:layout_marginTop="8dp"
                android:textColor="@color/ekyc_light_gray"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <com.widgets.TextViewRobotoBold
                android:id="@+id/lblKnowMore"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_toRightOf="@+id/imgDocVerification"
                android:layout_below="@+id/lblUploadDoc"
                android:layout_marginTop="8dp"
                android:layout_marginBottom="16dp"
                android:text="@string/know_more_about_sips"
                android:textColor="@color/color_view_history"
                android:textSize="13sp" />

        </RelativeLayout>

        <ImageView
            android:id="@+id/imgExpand"
            android:src="@drawable/ic_crm_accepted"
            app:layout_anchor="@id/layoutContent"
            app:layout_anchorGravity="center|bottom"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

    </android.support.design.widget.CoordinatorLayout>

我出现的问题是下拉图像没有放置在水平线的中心,而是放置在该线的上方。 请帮忙

这是解决您的问题的方法。 我不是将Coordinator与嵌套的相对布局一起使用,而是将LinearLayout与嵌套的FrameLayoutLinearLayout一起使用

这是布局xml

<LinearLayout android:id="@+id/layoutDocumentVerification"
android:layout_below="@+id/layoutTitles"
android:layout_marginTop="16dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal">

<FrameLayout
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_marginLeft="16dp"
    android:layout_marginRight="16dp">

    <ImageView
        android:id="@+id/imgExpand"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:padding="5dp"
        android:src="@drawable/ic_crm_accepted"/>
</FrameLayout>

<LinearLayout
    android:id="@+id/layoutContent"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ImageView
        android:id="@+id/imgDocVerification"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <TextView
        android:id="@+id/lblDocVerify"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="8dp"
        android:text="Document Verification"
        android:textSize="14sp"
        android:textColor="@android:color/black"/>

    <TextView
        android:id="@+id/lblUploadDoc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="8dp"
        android:text="Please upload your documents"
        android:textSize="13sp"
        android:textColor="@android:color/darker_gray"/>

    <TextView
        android:id="@+id/lblKnowMore"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Know more"
        android:textAllCaps="true"
        android:textStyle="bold"
        android:textColor="@android:color/holo_orange_dark"
        android:textSize="13sp" />
</LinearLayout>

如果需要带有自定义字体的TextView,则应在自定义主题中设置fontFamily属性。

由于“文档验证” TextView,如果图像不在中心,则无法使图像居中,则无法将图像设置为水平居中线。 您可以先检查一下,然后从“文档验证” TextView中删除以下行

android:layout_toRightOf="@+id/imgDocVerification"

然后将您的图像居中与下一行。 然后可以将其设置在中心水平线上。

   android:layout_centerVertical="true"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM