EditText高度的改变
EditText默认使用系统的背景图片,如果改变了EditText的高度,就会截取一部分背景图片,解决办法有三种:
一、
android:layout_height="wrap_content"
android:textSize="20px"
android:padding="5px"
android:background="#ffffffff"
但是这样背景就是白色,有焦点时也没有区别,那么可以在res/drawable/下自己新建shape.xml来画自己的背景图,参照文章《Android开发之Shap自定义图形》
二、
另外一个办法就是在布局中不使用具体数值来定义EditText大小,而是用layout_weight来规划大小,且EditText属性中android:layout_height="wrap_content",
如:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<TextView
android:id="@+id/userNameText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="user name:"
android:layout_marginRight="10px"
android:textColor="#ff000000"
android:textSize="20px"
/>
<EditText
android:id="@+id/userNameEdit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:imeOptions="flagNoExtractUi"
android:nextFocusRight="@+id/heightEdit"
android:nextFocusLeft="@+id/targetWeightEdit"
android:gravity="center_vertical"
android:textSize="20px"
/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<TextView
android:id="@+id/birthText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="date of birth:"
android:layout_marginRight="10px"
android:textColor="#ff000000"
android:textSize="20px"
/>
<EditText
android:id="@+id/birthEdit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:imeOptions="flagNoExtractUi"
android:nextFocusRight="@+id/activityLevelEdit"
android:nextFocusLeft="@id/heightEdit"
android:gravity="center_vertical"
android:textSize="20px"
/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<TextView
android:id="@+id/genderText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Gender:"
android:textColor="#ff000000"
android:layout_marginRight="10px"
android:textSize="20px"
android:gravity="center_vertical"
/>
<RadioGroup
android:id="@+id/genderGroup"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:tag="gender "
android:gravity="center_vertical"
>
<RadioButton
android:id="@+id/male"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="male"
android:layout_weight="1"
android:textColor="#ff000000"
android:layout_marginRight="10px"
android:nextFocusLeft="@+id/activityLevelEdit"
android:textSize="20px"
/>
<RadioButton
android:id="@+id/female"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:text="female"
android:layout_weight="1"
android:textColor="#ff000000"
android:nextFocusRight="@+id/targetWeightEdit"
android:textSize="20px"
/>
</RadioGroup>
</LinearLayout>
</LinearLayout>
三、也是最简单的办法,使用android另外一个背景图,就可以随意改变EditText的高度和宽度,只要字体大小符合EditText的大小,就可以完全显示了。如
<EditText
android:layout_width="300px"
android:layout_height="30px"
android:singleLine="true"
android:imeOptions="flagNoExtractUi"
android:gravity="center_vertical"
android:textSize="10px"
android:background="@android:drawable/editbox_background"
/>
更多相关文章
- android的View的大小写字母问题
- 【Android view】获取状态栏高度statu bar height的正确姿势
- Android获取设备状态栏status bar高度的正确姿势
- ImageVIew 设置图片大小
- Android: 背景图片平铺要这么干
- Android录制视频,可限制时长,限大小
- EditeText标签字体大小设置 是否可编辑
- Android Button的背景图片拉伸变形解决方法
- android设置背景图片透明