您好我正在创建用户列表的布局,其中包括名称和有时通知图标。问题是名称(绿色矩形)可以有任何宽度,当名称太长时,通知图标(红色矩形)被其容器(黑色矩形)边界隐藏。
http://postimg.org/image/6o7np9lx3/
它应该做的是,当通知图标消失时,名称可以采用其容器允许的任何宽度。但是当出现通知图标时,它永远不应该隐藏在容器的右侧,而只是将其移动到右侧。此外,通知图标应位于名称的右侧。 容器的宽度最后取决于屏幕宽度。
基本上就是这样:
http://postimg.org/image/94a0rxy1d/
希望我很清楚:-) 我会直接在这里上传图片,但我没有足够的声誉......
编辑:添加我创建的布局:
<RelativeLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/relativeLayout3"
android:paddingTop="0dp"
android:paddingRight="0dp"
android:paddingBottom="0dp"
android:paddingLeft="0dp"
android:layout_marginTop="8dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/CMCname"
android:layout_centerVertical="true"
android:ellipsize="middle"
android:textSize="16dp"
android:textStyle="bold"
android:textColor="#ff181818" />
<RelativeLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/relativeLayout4"
android:layout_toRightOf="@id/CMCname"
android:layout_marginLeft="7dp">
<ImageView
android:src="@android:drawable/ic_menu_gallery"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/CMCMessageCounterBG" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/CMCmessageCounter"
android:layout_centerInParent="true" />
</RelativeLayout>
</RelativeLayout>
答案 0 :(得分:0)
如果您的图标是静态的,那么您可以直接将其作为可绘制的文本视图,并且它可以正常工作。
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:drawableRight="@drawable/ic_launcher"
android:gravity="left|center"
android:padding="10dp"
android:text="Your text goes here" />
希望它有效。 :)