我正在使用使用内联删除按钮的自定义ListView
,但是当ListView
行超过1行时无法使按钮垂直拉伸。
我在使文本尊重按钮边界方面遇到了一些麻烦,虽然这样做比较早,所以我怀疑这是一个简单的修复。
我使用的代码如下:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/txt_item"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:gravity="center_vertical"
android:textStyle="bold"
android:textSize="22sp"
android:textColor="#000000"
android:textIsSelectable="false"
android:layout_margin="8dp" />
<Button
android:id="@+id/btn_delete"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:background="@drawable/delete"
android:contentDescription="@string/delete"/>
</RelativeLayout>
看起来像这样:
答案 0 :(得分:1)
试试这个:
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical">
<TextView
android:id="@+id/txt_item"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:textStyle="bold"
android:textSize="22sp"
android:textColor="#000000"
android:textIsSelectable="false"
android:layout_margin="8dp"
android:layout_weight="1"
android:singleLine="false"
android:text=""/>
<Button
android:id="@+id/btn_delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:background="@drawable/ic_launcher"
android:contentDescription="@string/delete"/>
</LinearLayout>
答案 1 :(得分:1)
为按钮添加此属性
android:scaleType="fitXY"
图像视图正在拉伸,但它所保留的图像却没有。请更改
android:background="@drawable/delete"
到
android:src="@drawable/delete"
答案 2 :(得分:0)
你需要设置按钮也是
android:layout_centerVertical="true"
<Button
android:id="@+id/btn_delete"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="@drawable/delete"
android:contentDescription="@string/delete"/>
我认为它会对你有所帮助。