我正在使用表格布局。我在表格行中有两个(列)文本视图。我想在android:ellipsize="end"
的末尾应用textView
。
但它不适合我,请看下面的屏幕截图。请告诉我如何将ellipsize应用于textview
内的table row
。
以下是代码:
<TableLayout
android:id="@+id/linerLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_margin="10dip"
android:background="@drawable/shape1"
android:stretchColumns="2" >
<TableRow
android:id="@+id/TableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Product used for "
android:textColor="@color/black_color" />
<TextView
android:id="@+id/productusedfor"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:minLines="1"
android:padding="5dp"
android:singleLine="true"
android:text="TextView"
android:textColor="@color/black_color" />
</TableRow>
<TableRow
android:id="@+id/TableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Treatment for "
android:textColor="@color/black_color" />
<TextView
android:id="@+id/treatementfor"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:minLines="1"
android:padding="5dp"
android:singleLine="true"
android:text="TextView"
android:textColor="@color/black_color" />
</TableRow>
<TableRow
android:id="@+id/TableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Horse Name "
android:textColor="@color/black_color" />
<TextView
android:id="@+id/horsename"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="10dp"
android:ellipsize="end"
android:minLines="1"
android:padding="5dp"
android:singleLine="true"
android:text="TextView"
android:textColor="@color/black_color" />
</TableRow>
<TableRow
android:id="@+id/TableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Where "
android:textColor="@color/black_color" />
<TextView
android:id="@+id/location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:minLines="1"
android:padding="5dp"
android:singleLine="true"
android:text="TextView"
android:textColor="@color/black_color" />
</TableRow>
答案 0 :(得分:8)
试试这个
您必须使用以下属性。因为textview宽度为wrap_content
所以它从tablerow开出。因此,如果您使用此属性,那么它将起作用:android:layout_weight="1"
。
<TableLayout
android:id="@+id/linerLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_margin="10dip"
android:background="@drawable/shape1"
android:stretchColumns="2" >
<TableRow
android:id="@+id/TableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Product used for "
android:textColor="@color/black_color" />
<TextView
android:id="@+id/productusedfor"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:minLines="1"
android:layout_weight="1"
android:padding="5dp"
android:singleLine="true"
android:text="fjdsngfksngfkfngkaklmngkldfmnkldgfnskldngkldnsklnghdnklgfnkdtgfndkgfn"
android:textColor="@color/black_color" />
</TableRow>
<TableRow
android:id="@+id/TableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Treatment for "
android:textColor="@color/black_color" />
<TextView
android:id="@+id/treatementfor"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:minLines="1"
android:layout_weight="1"
android:padding="5dp"
android:singleLine="true"
android:text="TextView"
android:textColor="@color/black_color" />
</TableRow>
<TableRow
android:id="@+id/TableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Horse Name "
android:textColor="@color/black_color" />
<TextView
android:id="@+id/horsename"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="10dp"
android:ellipsize="end"
android:minLines="1"
android:layout_weight="1"
android:padding="5dp"
android:singleLine="true"
android:text="TextView"
android:textColor="@color/black_color" />
</TableRow>
<TableRow
android:id="@+id/TableRow1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:text="Where "
android:textColor="@color/black_color" />
<TextView
android:id="@+id/location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:minLines="1"
android:layout_weight="1"
android:padding="5dp"
android:singleLine="true"
android:text="TextView"
android:textColor="@color/black_color" />
</TableRow>
</TableLayout>
它可能适合你。
答案 1 :(得分:0)
//试试这个
android:maxEms="9"
此属性会根据您想要获得的长度更改 maxEms 。
<TextView
android:id="@+id/productusedfor"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:minLines="1"
android:padding="5dp"
android:maxEms="5"
android:singleLine="true"
android:text="TextView"
android:textColor="@color/black_color" />
答案 2 :(得分:0)
对于多行TextView,我在每个需要ellipsize的TextView中使用android:maxLines="3"
。