android
android edittext的设置 -凯发ag旗舰厅登录网址下载
1、输入法enter键图标的设置:
软件盘的界面替换只有一个属性android:imeoptions,这个属性的可以取的值有normal,actionunspecified,actionnone,actiongo,actionsearch,actionsend,actionnext,actiondone,例如当值为actionnext时enter键外观变成一个向下箭头,而值为actiondone时enter键外观则变成了“完成”两个字。
我们也可以重写enter的事件
软键盘的enter键默认显示的是“完成”文本,通过设置android:imeoptions来改变默认的“完成”文本。这里举几个常用的常量值:
actionunspecified 未指定,对应常量editorinfo.ime_action_unspecified.
actionnone 没有动作,对应常量editorinfo.ime_action_none
actiongo 去往,对应常量editorinfo.ime_action_go
actionsearch 搜索,对应常量editorinfo.ime_action_search
actionsend 发送,对应常量editorinfo.ime_action_send
actionnext 下一个,对应常量editorinfo.ime_action_next
actiondone 完成,对应常量editorinfo.ime_action_done
(editorinfo.inputtype & editorinfo.type_class_mask)可以是许多不同的值,包括:
type_class_number
type_class_datetime
type_class_phone
type_class_text
2、事件捕捉处理:
可以通过setoneditoractionlistener设置事件处理。
final edittext input = new edittext(this); input.setsingleline(true); //android:singleline=”true” input.setimeoptions(editorinfo.ime_action_send); input.setinputtype(inputtype.type_class_text |inputtype.type_text_variation_password); input.setoneditoractionlistener(new textview.oneditoractionlistener() { public boolean oneditoraction(textview v, int actionid, keyevent event) { log.d(tag, "" actionid "," event); if (actionid==editorinfo.ime_action_send ||(event!=null&&event.getkeycode()== keyevent.keycode_enter)) { //do something; return true; } return false; } });3、editor密码隐藏,怎么写?
有2种方法处理:
代码方法:input.setinputtype(inputtype.type_class_text |inputtype.type_text_variation_password);
layout配置方法:android:inputtype="textpassword"
4、activity加载完成后,edit输入框会自动弹出输入法,可以通过以下代码屏蔽:
getwindow().setsoftinputmode(windowmanager.layoutparams.soft_input_state_hidden);
5、设置edittext始终不弹出软件键盘
例:edittext edit=(edittext)findviewbyid(r.id.edit);
edit.setinputtype(inputtype.type_null);
6、让 edittext失去焦点,使用edittext的clearfocus方法
例如:edittext edit=(edittext)findviewbyid(r.id.edit);
edit.clearfocus();
7、edittext默认不弹出软件键盘
在 androidmainfest.xml中选择activity,设置windowsoftinputmode属性为 adjustunspecified|statehidden
< activity android:name=".main" android:label="@string/app_name" android:windowsoftinputmode="adjustunspecified|statehidden" android:configchanges="orientation|keyboardhidden"> < intent-filter> < action android:name="android.intent.action.main" /> < category android:name="android.intent.category.launcher" /> < /intent-filter> < /activity>8、设置光标到指定位置
edittext et = (edittext) findviewbyid(r.id.ettest); et.setselection(2); //设置光标不显示,但不能设置光标颜色et.setcursorvisible(false);
//获得焦点时全选文本
et.setselectallonfocus(true);
et.requestfocus(); //请求获取焦点
et.clearfocus(); //清除焦点
使用edittext的seterror提示
et.seterror("邮箱");
自定义图标的seterror提示
drawable dr = getresources().getdrawable(r.drawable.ic_launcher); dr.setbounds(0, 0, 10, 10); //必须设置大小,否则不显示 et.seterror("有错误提示", dr); et.setinputtype(inputtype.type_class_phone);//只能输入电话号码 et.setinputtype(inputtype.type_class_number);//只能输入数字 et.setinputtype(inputtype.type_text_variation_email_address);//只能输入邮箱地址 et.setinputtype(inputtype.type_null); // 禁止输入(不弹出输入法) xml实现案例
8、edittext相关属性
edittext继承关系:view-->textview-->edittext。
edittext的属性很多,这里介绍几个:
android:layout_gravity="center_vertical"
设置控件显示的位置:默认 top,这里居中显示,还有bottom
android:hint="请输入数字!"
设置显示在空间上的提示信息
android:numeric="integer"
设置只能输入整数,如果是小数则是:decimal
android:singleline="true"
设置单行输入,一旦设置为true,则文字不会自动换行。
android:password="true"
设置只能输入密码
android:textcolor = "#ff8c00"
字体颜色
android:textstyle="bold"
字体,bold, italic, bolditalic
android:textsize="20dip"
大小
android:capitalize = "characters"
以大写字母写
android:textalign="center"
edittext没有这个属性,但textview有,居中
android:textcolorhighlight="#cccccc"
被选中文字的底色,默认为蓝色
android:textcolorhint="#ffff00"
设置提示信息文字的颜色,默认为灰色
android:textscalex="1.5"
控制字与字之间的间距
android:typeface="monospace"
字型,normal, sans, serif, monospace
android:background="@null"
空间背景,这里没有,指透明
android:layout_weight="1"
权重,控制控件之间的地位,在控制控件显示的大小时蛮有用的。
android:textappearance="?android:attr/textappearancelargeinverse"
总结
以上是凯发ag旗舰厅登录网址下载为你收集整理的android edittext的设置的全部内容,希望文章能够帮你解决所遇到的问题。
如果觉得凯发ag旗舰厅登录网址下载网站内容还不错,欢迎将凯发ag旗舰厅登录网址下载推荐给好友。
- 上一篇:
- 下一篇: