imeOptions软键盘setOnEditorActionListener 

默认情况下软键盘右下角的按钮为“下一个”,点击会到下一个输入框,保持软键盘

设置 android:imeOptions="actionDone" ,软键盘下方变成“完成”,点击后光标保持在原来的输入框上,并且软键盘关闭

android:imeOptions="actionSend" 软键盘下方变成“发送”,点击后光标移动下一个


 
在 这里设置的imeOptions如何使用呢?如下面的代码,让EditText实现setOnEditorActionListener,在 onEditAction方法中actionId就对应我们设置的imeOptions。系统默认的actionId 有:EditorInfo.IME_NULL、EditorInfo.IME_ACTION_SEND、 EditorInfo.IME_ACTION_DONE等。这样我们就可以根据不同的EditText来实现不同的软键盘右下角功能键。
Java代码  
  1. package com.test;
  2. import com.test.main.TestAsyn;
  3. import android.app.Activity;
  4. import android.os.Bundle;
  5. import android.view.KeyEvent;
  6. import android.view.inputmethod.EditorInfo;
  7. import android.widget.EditText;
  8. import android.widget.TextView;
  9. import android.widget.TextView.OnEditorActionListener;
  10. import android.widget.Toast;
  11. public class IMFActivity extends Activity implements OnEditorActionListener {
  12. EditText etDefault;
  13. EditText etEmail;
  14. EditText etNumber;
  15. /** Called when the activity is first created. */
  16. @Override
  17. public void onCreate(Bundle savedInstanceState) {
  18. super.onCreate(savedInstanceState);
  19. setContentView(R.layout.imf_layout);
  20. etDefault = (EditText)findViewById(R.id.default_content);
  21. etEmail = (EditText)findViewById(R.id.email_content);
  22. etNumber = (EditText)findViewById(R.id.number_content);
  23. etDefault.setOnEditorActionListener(this);
  24. etEmail.setOnEditorActionListener(this);
  25. etNumber.setOnEditorActionListener(this);
  26. }
  27. @Override
  28. public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
  29. switch(actionId){
  30. case EditorInfo.IME_NULL:
  31. System.out.println("null for default_content: " + v.getText() );
  32. break;
  33. case EditorInfo.IME_ACTION_SEND:
  34. System.out.println("action send for email_content: "  + v.getText());
  35. break;
  36. case EditorInfo.IME_ACTION_DONE:
  37. System.out.println("action done for number_content: "  + v.getText());
  38. break;
  39. }
  40. //Toast.makeText(this, v.getText()+"--" + actionId, Toast.LENGTH_LONG).show();
  41. return true;
  42. }
  43. }
xml文件:
Xml代码  
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="fill_parent" android:layout_height="fill_parent">
  4. <TableLayout android:layout_width="fill_parent"
  5. android:layout_height="fill_parent">
  6. <TableRow>
  7. <TextView android:text="No special rules" android:id="@+id/TextView01"
  8. android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
  9. <EditText android:text="1111111111111" android:id="@+id/default_content"
  10. android:layout_width="fill_parent" android:layout_height="wrap_content"></EditText>
  11. </TableRow>
  12. <TableRow>
  13. <TextView android:text="Email address:" android:id="@+id/TextView01"
  14. android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
  15. <EditText android:text="" android:id="@+id/email_content"
  16. android:layout_width="fill_parent" android:layout_height="wrap_content"
  17. android:inputType="text|textEmailAddress"
  18. android:imeOptions="actionSend"></EditText>
  19. </TableRow>
  20. <TableRow>
  21. <TextView android:text="Signed decimal number:" android:id="@+id/TextView01"
  22. android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
  23. <EditText android:text="" android:id="@+id/number_content"
  24. android:layout_width="fill_parent" android:layout_height="wrap_content"
  25. android:inputType="number|numberSigned|numberDecimal"
  26. android:imeOptions="actionDone"></EditText>
  27. </TableRow>
  28. </TableLayout>
  29. </ScrollView>

  • 查看图片附件

android:imeOptions属性相关推荐

  1. 对EditText的软键盘进行监听-----android:imeOptions

    在android发开过程中,有时候需要对EditText的软键盘进行监听. 当点击软键盘回车位置按键的时候,需要实现 完成.前进.下一项.搜索.发送或其他功能,这就需要开发者对软键盘回车的点击事件进行 ...

  2. Android:EditText 属性

    Android开发EditText属性 EditText 官网链接 EditText继承关系:View-->TextView-->EditText EditText 部分属性: XML 设 ...

  3. androidEditTextinputType及android:imeOptions=”actionDone”(转)

    一.android 软件盘事件响应 在android中,有时需要对EditText实现软件盘监听的场景.当android按下软键盘的时候,响应完成.发送.搜索或者其他事件. Google 提供了 Ed ...

  4. imeoptions android,软键盘小记Android:imeOptions

    1.actionUnspecified 未指定,对应常量EditorInfo.IME_ACTION_UNSPECIFIED. 2.actionNone 没有动作,对应常量EditorInfo.IME_ ...

  5. Android -- XML属性

    第一类:属性值为true或false android:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android:la ...

  6. android button 属性,两行显示数字,前面各有图像,Android_2_常用控件及常用属性

    安卓常用控件及其常用属性 TextView android:id 这是唯一地标识控件的ID. android:capitalize 如果设置,指定该TextView中有一个文本输入法 会自动利用什么类 ...

  7. Android xml 属性大全

    第一类:属性值为true或false android:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android:la ...

  8. Android 相关属性

    TextView: Android:layout_gravity="center_vertical" 设置控件显示的位置:默认top,这里居中显示,还有bottom android ...

  9. EditText的imeOptions属性的设置

    EditText中点击弹出软键盘后,一般软键盘右下角是一个回车按钮.其实这个是可以通过设置EditText的imeOptions属性进行修改. 我们经常会看到点击不同的编辑框,输入法软键盘右下角会有不 ...

最新文章

  1. Linux下查看显示器输出状态以及修改显示器工作模式(复制 or 扩展)
  2. Office 2016 安装后RTX无法启动问题
  3. JavaScript中的instanceof运算符是什么?
  4. 了解Access安全性
  5. sha1withRSA md5withRSA分析
  6. C语言什么时候必须用到二级指针?(需要调用函数为一维空指针确定值的情况下,需要传入二维指针,也就是那个一维指针的指针)
  7. SQL SELECT DISTINCT 语句 用法
  8. python删除列表元素_追求简单C++之删除STL列表的元素
  9. Nginx 概述(2)
  10. MakersPlace将启动1美元特价的Beeple限量NFT抽奖活动
  11. Dos命令 --复制文件(夹)
  12. c语言32关键字详解pdf,C语言32个关键字.pdf
  13. 如何查看kali的详细ip地址网关_在Linux中检查默认网关或路由器IP地址的四个命令...
  14. python pip install pil_python安装PIL库
  15. 2020软考成绩查询时间公布
  16. Unity获取Android手机的RAM和剩余RAM和ROM
  17. 餐饮app开发市场前景如何?行业竞争激烈吗?
  18. 小新PadPlush刷MIUI教程
  19. 基于Filament引擎的Animoji效果实现
  20. 第九届大唐杯直播整理

热门文章

  1. nodejs事务使用总结
  2. 德国市占率第一的科沃斯携最新扫地机器人亮相IFA展
  3. 《云计算:原理与范式》一3.9 SaaS集成服务
  4. 手机远程ssh登录Linux,Linux SSH(远程登录)到Milestone手机
  5. GDT、GDTR、LDT、LDTR的学习
  6. 使用Strust2框架写HelloWorld
  7. 用Python操作Oracle
  8. Android开发-将自定义View布局到Layout中并调用
  9. ASP.NET中如何搭建三层架构
  10. 二进制 java Class文件解析实例