我有一个ImageView,我想设置一个圆形边框,我有一个可绘制的形状,但在右边和底部,边框不正确,我设置了截图,了解这一点:
这是XML代码:
<?xml version="1.0" encoding="utf-8"?>
<merge
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/rl"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/et_message"
android:layout_toRightOf="@+id/rl_bt_s"
android:layout_toEndOf="@+id/rl_bt_s"
android:layout_toStartOf="@+id/send_bt_c"
android:layout_toLeftOf="@+id/send_bt_c"
android:layout_centerVertical="true"
android:layout_height="wrap_content"/>
<RelativeLayout
android:id="@+id/rl_bt_s"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/et_message"
android:padding="6dp"
android:gravity="center">
<ImageButton
android:id="@+id/bt_chat_s"
android:layout_width="36dp"
android:layout_height="36dp"
android:padding="10dp"
android:background="@android:color/transparent"
android:clickable="false"/>
<ImageView
android:id="@+id/iv_action_attach"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_alignLeft="@id/bt_chat_s"
android:layout_alignStart="@id/bt_chat_s"
android:src="@drawable/icon_input_plus"
android:background="@drawable/chat_attachment_border_smsmode"/>
</RelativeLayout>
</merge>
这就是形状:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
<stroke android:width="1dp"
android:color="#999999"
/>
<padding android:left="4dp"
android:top="4dp"
android:right="4dp"
android:bottom="4dp"
/>
<corners android:radius="4dp"/>
</shape>
正如您在屏幕截图中看到的那样,右侧边框和底部边框并非如此,但我不知道为什么。
答案 0 :(得分:0)
尝试更改父RelativeLayout以获得所需的宽度,并为其宽度/高度设置子视图match_parent。
<RelativeLayout
android:id="@+id/rl_bt_s"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_alignBottom="@id/et_message"
android:gravity="center">
<ImageButton
android:id="@+id/bt_chat_s"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"
android:background="@android:color/transparent"
android:clickable="false"/>
<ImageView
android:id="@+id/iv_action_attach"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/icon_input_plus"
android:background="@drawable/chat_attachment_border_smsmode"/>
</RelativeLayout>