我想使linearlayout与imageview水平对齐,并且我的布局中有RelativeLayout父级。我必须使用相对布局对齐我的布局。我现在不想使用约束布局。我关注的是相对布局有多灵活,以便可以从中获得好处。 当我使用 android:layout_toEndOf =“ @ + id / product_img” 应该对齐时,rignt现在我的product_img的边距为20 dp,但是当我将线性布局设置为 android:layout_toEndOf = “ @ + id / product_img” 它只将其设置在最后一面,但是我仍然需要为此新布局设置20dp的上边距。为什么我又和agian将利润率设置在每种布局的顶部?
<RelativeLayout 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:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="@dimen/_10sdp"
android:background="@drawable/round_corner_white_alrt_box"
android:orientation="vertical">
<ImageView
android:id="@+id/product_img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_marginTop="@dimen/_20sdp"
android:src="@mipmap/ic_launcher"
/>
<ImageView
android:id="@+id/cross_btn"
android:layout_width="@dimen/_16sdp"
android:layout_height="@dimen/_16sdp"
android:layout_alignParentEnd="true"
android:src="@drawable/ic_x"
/>
<LinearLayout
android:id="@+id/product_detail_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/_5sdp"
android:layout_toEndOf="@+id/product_img"
android:orientation="vertical"
>
<TextView
android:id="@+id/price_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/product_img"
android:fontFamily="@font/montserrat_regular"
android:text="@string/how_many"
android:textColor="@color/green"
android:textSize="@dimen/_11sdp" />
<TextView
android:id="@+id/product_detail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/product_img"
android:fontFamily="@font/montserrat_regular"
android:text="@string/how_many"
android:textColor="@color/black"
android:textSize="@dimen/_11sdp" />
<TextView
android:id="@+id/product_quantity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/product_detail"
android:layout_toRightOf="@+id/product_img"
android:fontFamily="@font/montserrat_regular"
android:text="@string/how_many"
android:textColor="@color/colorGrey"
android:textSize="@dimen/_11sdp" />
</LinearLayout>
答案 0 :(得分:0)
只需在您的LinearLayout
中添加以下代码即可。
android:layout_alignTop="@id/product_img"
答案 1 :(得分:0)
我对您的代码进行了一些更改,请用您的代码替换图片并检查。
我刚刚添加了
android:layout_centerVertical =“ true”
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="@dimen/_10sdp"
android:background="@color/white"
android:orientation="vertical">
<ImageView
android:id="@+id/product_img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true" // magic is here
android:layout_marginTop="@dimen/_20sdp"
android:src="@mipmap/ic_launcher" />
<ImageView
android:id="@+id/cross_btn"
android:layout_width="@dimen/_16sdp"
android:layout_height="@dimen/_16sdp"
android:layout_alignParentEnd="true"
android:src="@drawable/delete_category" />
<LinearLayout
android:id="@+id/product_detail_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true" // magic is here
android:layout_marginStart="@dimen/_5sdp"
android:layout_toEndOf="@+id/product_img"
android:orientation="vertical">
<TextView
android:id="@+id/price_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hom Many you got?"
android:textColor="@android:color/holo_green_dark"
android:textSize="@dimen/_11sdp" />
<TextView
android:id="@+id/product_detail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hom Many you got?"
android:textColor="@color/black_overlay_50"
android:textSize="@dimen/_11sdp" />
<TextView
android:id="@+id/product_quantity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hom Many you got?"
android:textColor="@color/gray"
android:textSize="@dimen/_11sdp" />
</LinearLayout>
</RelativeLayout>