1

以下是我嘗試設計的屏幕,我使用的是CoordinatorLayout 但無法將我的圖像與RelativeLayout一起對齊,如圖所示。無法對齊相對佈局的圖像視圖

enter image description here

以下是我的代碼

<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> 

問題存在的對我是下拉圖像不獲取放置在水平線的中心,但要置於高於線。請幫助

回答

0

這是您的問題的解決方案。而不是使用協調與嵌套相對佈局,我用的LinearLayout嵌套的FrameLayout的LinearLayout

這是佈局的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屬性。

0

由於「文檔驗證」TextView不在圖像中間,因此無法將圖像居中,因此您無法將圖像設置爲居中水平線。 您可以檢查它首先從「文件驗證」 TextView中刪除下面一行

android:layout_toRightOf="@+id/imgDocVerification" 

然後用低於線中心圖像。那麼你可以將它設置在中心水平線上。

android:layout_centerVertical="true"