我正在尝试使用舍入的EditText。
布局中的我的EditText就像
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp" >
<EditText
android:id="@+id/EditTextSearch"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/edit_round"
android:padding="5dip"
android:singleLine="true" >
<requestFocus />
</EditText>
<ImageView
android:id="@+id/searchBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:src="@android:drawable/ic_menu_search" />
</FrameLayout>
和我用作EditText背景的drawable就像
<?xml version="1.0" encoding="utf-8"?>
<!-- res/drawable/rounded_edittext.xml -->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:padding="10dp"
android:shape="rectangle" >
<solid android:color="#FFFFFF" />
<corners
android:bottomLeftRadius="12dp"
android:bottomRightRadius="12dp"
android:topLeftRadius="12dp"
android:topRightRadius="12dp" />
</shape>
在我的XML图形布局中,我的edittext看起来很精细和圆润,但在模拟器和设备中它看起来不像?
有谁知道为什么会这样?
由于
答案 0 :(得分:1)
删除android:padding="10dp"
属性以使drawable看起来像这样。我只是测试了它,删除padding属性显示圆角就好了。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<solid android:color="#FFFFFF" />
<padding
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp" />
<corners
android:bottomLeftRadius="12dp"
android:bottomRightRadius="12dp"
android:topLeftRadius="12dp"
android:topRightRadius="12dp" />
</shape>
要将padding
添加到Shape Drawable
,请注意上面代码中添加的填充属性。
证据在于布丁:; - )
设备屏幕截图:
模拟器截图:
答案 1 :(得分:0)
您没有提供stroke
元素,因此您可能只是看不到背景(因为它只是白色填充!)。当您更改背景或添加笔划时,它应该是可见的。
添加:
<stroke android:width="2dp" android:color="#000000" />
噗!矩形是可见的:) BTW填充不是问题 - 它只是被忽略了。