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"

更多相关文章

  1. 【Android】MediaPlayer使用方法简单介绍
  2. Android(安卓)Studio中提示:Project SDK is not defined
  3. TextView通过获得dimens.xml中定义的大小来动态设置字体大小
  4. Android开发 Fiddler抓包工具简介
  5. Android沉浸式状态栏/状态栏设置背景图片/自定义渐变式状态栏
  6. 【Android】设置打印机参数
  7. android TextView设置字体颜色
  8. 自定义圆形ProgressBar
  9. Android(安卓)中不同的系统版本隐藏和显示systemui方法

随机推荐

  1. 深入Android【五】—— 任务和进程
  2. android 6.0(api 23) SDK,不再提供org.apa
  3. Linux 3.3内核发布 融合Android源代码
  4. 转-Android原生(Native)C(JNI/NDK)开发之
  5. 转:Android 逆向apk程序的心得
  6. Android(安卓)学习笔记之数据存储SharePr
  7. Android 使用 Gradle 多渠道打包
  8. 〖Android〗屏幕触屏事件录制与回放
  9. android语音识别方法示例代码
  10. [转]Android(安卓)Intent的几种用法全面