[英]LinearLayout with blank space at the bottom
我正在使用LinearLayout水平从适配器加载视图。 尽管我使用wrap_content,并且布局中的视图始终对齐到顶部。 在linearLayout下面有一个空格。 这是错误还是我做错了。 请检查附件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:clickable="true"
android:background="@drawable/recycler_selector">
<de.hdodenhof.circleimageview.CircleImageView
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="50dp"
android:id="@+id/group_chat_photo" />
<RelativeLayout
android:layout_width="0dp"
android:layout_weight="5"
android:paddingStart="5dp"
android:paddingEnd="5dp"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"
android:layout_height="wrap_content"
style="@style/ListTitleTextStyle"
android:id="@+id/group_name" />
<TextView
android:layout_width="wrap_content"
android:padding="5dp"
android:layout_toStartOf="@id/group_name"
android:layout_height="wrap_content"
android:id="@+id/num_of_group_users"
style="@style/PresenceTextStyle"
android:layout_toEndOf="@id/group_name"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/SubTitleTextStyle"
android:layout_below="@id/group_name"
android:id="@+id/group_members_presence"/>
</RelativeLayout>
<ImageView
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:src="@drawable/ic_dots_vertical_grey600_24dp"
android:contentDescription="@string/group_chat_options"
android:id="@+id/group_chat_options"/>
</LinearLayout>
这个元素是主要问题,
<TextView
android:id="@+id/num_of_group_users"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toEndOf="@id/group_name"
android:layout_toStartOf="@id/group_name"
tools:text="10 users"
android:padding="5dp" />
由于您已经在使用相对布局,因此无需将其包装在线性布局周围。 您可以将单个RelativeLayout用作容器。 例如,以下只是一个想法,您可以根据需要更改填充和边距。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/holo_orange_dark"
android:orientation="horizontal">
<ImageView
android:id="@+id/group_chat_photo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:src="@mipmap/ic_launcher" />
<TextView
android:id="@+id/group_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/group_chat_photo"
tools:text="Some title" />
<TextView
android:id="@+id/num_of_group_users"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/group_name"
android:layout_toRightOf="@+id/group_members_presence"
tools:text="10 users" />
<TextView
android:id="@+id/group_members_presence"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/group_name"
android:layout_toRightOf="@+id/group_chat_photo"
tools:text="Presence" />
<ImageView
android:id="@+id/group_chat_options"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@mipmap/ic_launcher" />
</RelativeLayout>
尝试将整个线性布局放入另一个布局(相对或线性)中,并将其宽度设置为“ match_parent”,将高度设置为“ wrap_content”
我认为问题在于您在其中一个TextView中使用layout_toStartOf和layout_toEndOf(android:id =“ @ + id / num_of_group_users”)删除其中之一。
不要对RelativeLayout
使用LinearLayout
属性android:layout_weight
。 我已经使用RelativeLayout
重新设计了您的xml。 有关输出,请参见所附图像。
这是工作代码。 尝试这个:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="82dp"
android:clickable="true"
android:background="#455A64"
android:padding="16dp">
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/group_chat_photo"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentLeft="true"
android:src="@mipmap/ic_launcher"/>
<ImageView
android:id="@+id/group_chat_options"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@drawable/ic_dots_vertical_grey600_24dp"
android:contentDescription="group_chat_options" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/group_chat_photo"
android:layout_toLeftOf="@id/group_chat_options"
android:layout_centerVertical="true"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp">
<TextView
android:id="@+id/group_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Americal AllStars"
android:textColor="#FFFFFF"
android:textSize="18dp"/>
<TextView
android:id="@+id/group_members_presence"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/group_name"
android:text="Alucard, Client"
android:textColor="#0788C9"
android:textSize="16dp" />
<TextView
android:id="@+id/num_of_group_users"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/group_members_presence"
android:layout_alignBottom="@id/group_members_presence"
android:paddingLeft="5dp"
android:text="and 10 others"
android:textColor="#0788C9"
android:textSize="16dp" />
</RelativeLayout>
</RelativeLayout>
OUTPUT:
希望对您有帮助〜
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.