所以你可以理解我的观点,这是一张图片:
因此,CODE(A)如下:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/list_selector"
android:orientation="horizontal"
android:padding="5dip" >
<!-- ListRow Left sied Thumbnail image -->
<LinearLayout android:id="@+id/thumbnail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="3dip"
android:layout_alignParentLeft="true"
android:layout_marginRight="5dip"
android:background="@drawable/image_bg">
<ImageView
android:id="@+id/product_image"
android:layout_width="50dip"
android:layout_height="50dip"
android:src="@drawable/bag"
android:scaleType="fitXY"/>
</LinearLayout>
<TextView
android:id="@+id/title_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/thumbnail"
android:layout_toRightOf="@+id/thumbnail"
android:text="Title of product"
android:textColor="#040404"
android:textSize="15sp"
android:textStyle="bold"
android:typeface="sans"
android:lines="2"
android:gravity="left"
/>
<TextView
android:id="@+id/model_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/title_product"
android:textColor="#343434"
android:textSize="10dip"
android:layout_marginTop="1dip"
android:layout_toRightOf="@+id/thumbnail"
android:text="Model..." />
<TextView
android:id="@+id/price_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignTop="@id/title_product"
android:gravity="right"
android:text="10,99€"
android:layout_marginRight="5dip"
android:textSize="13dip"
android:textColor="#10bcc9"
android:textStyle="bold"/>
</RelativeLayout>
代码(B):
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/list_selector"
android:orientation="horizontal"
android:padding="5dip" >
<!-- ListRow Left sied Thumbnail image -->
<LinearLayout android:id="@+id/thumbnail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="3dip"
android:layout_alignParentLeft="true"
android:layout_marginRight="5dip"
android:background="@drawable/image_bg">
<ImageView
android:id="@+id/product_image"
android:layout_width="50dip"
android:layout_height="50dip"
android:src="@drawable/bag"
android:scaleType="fitXY"/>
</LinearLayout>
<TextView
android:id="@+id/title_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/thumbnail"
android:layout_toRightOf="@+id/thumbnail"
android:layout_toLeftOf="@+id/price_product"
android:maxLines="1"
android:text="Title of product"
android:textColor="#040404"
android:textSize="15sp"
android:textStyle="bold"
android:typeface="sans"
android:lines="2"
android:gravity="left"
/>
<TextView
android:id="@+id/model_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/title_product"
android:textColor="#343434"
android:textSize="10dip"
android:layout_marginTop="1dip"
android:layout_toRightOf="@+id/thumbnail"
android:text="Model..." />
<TextView
android:id="@+id/price_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text="10,99€"
android:layout_marginRight="5dip"
android:textSize="13dip"
android:textColor="#10bcc9"
android:textStyle="bold"/>
</RelativeLayout>
正如您所看到的,“标题产品”与“价格”重叠。在第一张图片中实现我想要的最佳方法是什么?
答案 0 :(得分:1)
试试这个..
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:background="@drawable/list_selector"
android:padding="5dip" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="5dip" >
<!-- ListRow Left sied Thumbnail image -->
<LinearLayout android:id="@+id/thumbnail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="3dip"
android:background="@drawable/image_bg"
android:layout_marginRight="5dip">
<ImageView
android:id="@+id/product_image"
android:layout_width="50dip"
android:layout_height="50dip"
android:src="@drawable/bag"
android:scaleType="fitXY"/>
</LinearLayout>
<LinearLayout android:id="@+id/thumbnail"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:padding="3dip"
android:layout_weight="0.7"
android:orientation="vertical"
android:layout_marginRight="5dip">
<TextView
android:id="@+id/title_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Title of product"
android:textColor="#040404"
android:textSize="15sp"
android:textStyle="bold"
android:typeface="sans"
android:gravity="left"
/>
<TextView
android:id="@+id/model_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#343434"
android:textSize="10dip"
android:layout_marginTop="1dip"
android:text="Model..." />
</LinearLayout>
<LinearLayout android:id="@+id/thumbnail"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:padding="3dip"
android:layout_weight="0.3"
android:orientation="vertical"
android:layout_marginRight="5dip">
<TextView
android:id="@+id/price_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text="10,99€"
android:layout_marginRight="5dip"
android:textSize="13dip"
android:textColor="#10bcc9"
android:textStyle="bold"/>
</LinearLayout>
</LinearLayout>
答案 1 :(得分:1)
你可以将ellipsize放在行的末尾,或者你需要在多行中创建TextView,我的意思是你需要让textview在第1行完成时找到新的行。
android:ellipsize="end"
可能适合你。