这就是我想要的:
[屏幕快照]
这就是我所做的:
<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="30dip"
android:background="@color/color"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="1dp"
android:background="@color/color"
android:orientation="horizontal">
<View
android:id="@+id/divider"
android:layout_width="5dp"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:background="@color/grey"
android:gravity="center_vertical" />
<LinearLayout
android:id="@+id/llayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/color"
android:orientation="vertical" >
<TextView
android:id="@+id/label"
style="@style/some_style"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:layout_marginLeft="8dp"
android:gravity="left" />
<TextView
android:id="@+id/label2"
style="@style/some_style"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:layout_marginLeft="8dp"
android:gravity="left" />
</LinearLayout>
</LinearLayout>
</merge>
我已经做了差不多,但问题是如何在垂直线性布局的右上角对齐图像(可以在屏幕截图中看到)。
此外,我尝试使用相对布局,图像位于右上角,但它正在文本视图中剪切我的文本。
请建议:
答案 0 :(得分:2)
将LinearLayut
放在RelativeLayout
内,其中包含ImageView
并适用于ImageView
属性android:layout_alignParentRight="true"
答案 1 :(得分:0)
您可以通过imageview
的layout_gravity属性进行设置<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="com.fierbasedemo.MainActivity">
<ImageView
android:id="@+id/tv_name"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_gravity="right" />
</LinearLayout>
答案 2 :(得分:0)
将android:layout_gravity="right"
应用于imageview的父布局
答案 3 :(得分:0)
您需要将ImageView作为LinearLayout的Top元素,并将其重力设为:
android:layout_gravity="right|end"
如果可能,为该ImageView提供静态大小。
答案 4 :(得分:0)
就我而言,解决了反相问题。只需将LinearLayout放在您的RelativeLayout内,然后仅将图像设置在RelativeLayout上即可。
对我来说,使用此设置可以达到目的。
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@layout/list_bg_selector">
<ImageView
android:id="@+id/book_img_id"
android:layout_width="match_parent"
android:layout_height="110dp"
android:scaleType="centerCrop"/>
<TextView
android:id="@+id/book_title_id"
android:textColor="@color/azul_band"
android:textSize="10sp"
android:gravity="center"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Book Title"/>
</LinearLayout>
<ImageView
android:id="@+id/imgFavorito"
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_alignParentRight="true"
android:layout_gravity="right|end"
android:src="@drawable/bookmark_off"
android:layout_marginRight="2dp"
android:paddingTop="3dp"/>
</RelativeLayout>