<LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/iconlist" <TextView android:id="@+id/date" android:layout_height="wrap_content" android:layout_width="wrap_content" android:textSize= "12sp" android:textColor="@color/dlg_text_counter_color" android:layout_marginLeft="6dp" android:gravity="center_vertical" /> </LinearLayout> <LinearLayout android:id="@+id/content" android:layout_alignParentTop="true" android:layout_marginTop="10dip" android:layout_toLeftOf="@id/iconlist" android:gravity="center_vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <ImageView android:id="@+id/fullintegrationmode" android:layout_height="wrap_content" android:layout_width="wrap_content" android:visibility="gone"/> <TextView android:id="@+id/from" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceMedium" android:singleLine="true" android:layout_marginRight="6dip" android:ellipsize="middle" /> <TextView android:id="@+id/unread" android:background="@drawable/ipmsg_message_box" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:textSize="12sp" android:textColor="@color/text_color_unread" android:singleLine="true" /> </LinearLayout>
问题:当TextView from 文字过长的时候,会跟 TextView date发生重叠
解决方法:只要添加一个属性android:layout_toLeftOf="@id/iconlist" 就可以了,因为这能保证它不会超越iconlist 的控件位置
补充:textview省略的四种形式
1.android:ellipsize=”start”—–省略号显示在开头
2.android:ellipsize=”end”——省略号显示在结尾
3.android:ellipsize=”middle”—-省略号显示在中间