Android EditText的设置
2015-09-10 12:20
441 查看
<span style="font-size:18px;"><span style="font-size:18px;"> Android EditText的设置 EditText相关属性android 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实现案例 <EditText android:id="@+id/etTest" android:inputType="number" android:layout_width="wrap_content" android:layout_height="wrap_content"/> 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" 不要让昨天的沮丧 让今天的梦想安然失色</span></span>
相关文章推荐
- MAC 下配置代理用于终端下载Android源码
- Android EditText的设置错误提示信息
- 【android】ImageView的src和background以及两者之间的神奇的差异
- 【Android开发】使用DDMS巧妙进行手机屏幕录制
- Android带平移动画的栏目选择功能
- android开发步步为营之75:ListView监听上滑下滑事件
- android自定义无上下padding的textview
- 第三方QQ登录不回调 (Android)
- android轻量级开源缓存框架——ASimpleCache(ACache)源码分析(封装好了一个工具类供大家使用)
- Android官方设计常用icon以及color颜色RGB值和对应颜色效果图
- android隐藏标题栏和状态栏
- Android笔记(二十八)通知的使用
- 基于Android Studio 的NDK之 “Hello,World!”
- android-仿图片地震波SeismicWaveView
- Android动画(Animation)
- Ubuntu和Mac中Android源码查看工具
- Android初学-----环形进度条 带渐变
- 【问题解决】Android Stdio报错:Error occurred during initialization of VM Could not reser
- Android最佳性能实践(一)——合理管理内存
- Android几种FrameWork(Manager)的用法