android:imeOptions属性
来源:互联网 发布:js二维数组姓名,年龄 编辑:程序博客网 时间:2024/05/24 07:08
默认情况下软键盘右下角的按钮为“下一个”,点击会到下一个输入框,保持软键盘
设置 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来实现不同的软键盘右下角功能键。
- package com.test;
- import com.test.main.TestAsyn;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.KeyEvent;
- import android.view.inputmethod.EditorInfo;
- import android.widget.EditText;
- import android.widget.TextView;
- import android.widget.TextView.OnEditorActionListener;
- import android.widget.Toast;
- public class IMFActivity extends Activity implements OnEditorActionListener {
- EditText etDefault;
- EditText etEmail;
- EditText etNumber;
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.imf_layout);
- etDefault = (EditText)findViewById(R.id.default_content);
- etEmail = (EditText)findViewById(R.id.email_content);
- etNumber = (EditText)findViewById(R.id.number_content);
- etDefault.setOnEditorActionListener(this);
- etEmail.setOnEditorActionListener(this);
- etNumber.setOnEditorActionListener(this);
- }
- @Override
- public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
- switch(actionId){
- case EditorInfo.IME_NULL:
- System.out.println("null for default_content: " + v.getText() );
- break;
- case EditorInfo.IME_ACTION_SEND:
- System.out.println("action send for email_content: " + v.getText());
- break;
- case EditorInfo.IME_ACTION_DONE:
- System.out.println("action done for number_content: " + v.getText());
- break;
- }
- //Toast.makeText(this, v.getText()+"--" + actionId, Toast.LENGTH_LONG).show();
- return true;
- }
- }
xml文件:
- <?xml version="1.0" encoding="utf-8"?>
- <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent" android:layout_height="fill_parent">
- <TableLayout android:layout_width="fill_parent"
- android:layout_height="fill_parent">
- <TableRow>
- <TextView android:text="No special rules" android:id="@+id/TextView01"
- android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
- <EditText android:text="1111111111111" android:id="@+id/default_content"
- android:layout_width="fill_parent" android:layout_height="wrap_content"></EditText>
- </TableRow>
- <TableRow>
- <TextView android:text="Email address:" android:id="@+id/TextView01"
- android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
- <EditText android:text="" android:id="@+id/email_content"
- android:layout_width="fill_parent" android:layout_height="wrap_content"
- android:inputType="text|textEmailAddress"
- android:imeOptions="actionSend"></EditText>
- </TableRow>
- <TableRow>
- <TextView android:text="Signed decimal number:" android:id="@+id/TextView01"
- android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
- <EditText android:text="" android:id="@+id/number_content"
- android:layout_width="fill_parent" android:layout_height="wrap_content"
- android:inputType="number|numberSigned|numberDecimal"
- android:imeOptions="actionDone"></EditText>
- </TableRow>
- </TableLayout>
- </ScrollView>
0 0
- android:imeOptions属性 (转载)
- android:imeOptions属性
- android:imeOptions属性
- android:imeOptions属性
- android:imeOptions属性
- android:imeOptions属性
- android:imeOptions属性
- android:imeOptions属性介绍
- Android android:imeOptions属性不起作用
- Android EditText inputType imeOptions 属性
- Android EditText imeOptions属性详解
- Android EditText imeOptions属性详解
- android:imeOptions(EditText)属性
- android:EditText控件imeOptions属性
- Android EditText imeOptions属性详解
- Android EditText imeOptions属性详解
- EditText的 android:imeOptions属性,响应事件
- 浅谈Android组件EditText的imeOptions属性
- c51 Using使用
- 生活之美
- eclipse cocos2dx Command line too long
- 关于static 的意义---》thinking in java
- 【LeetCode】Intersection of Two Linked Lists
- android:imeOptions属性
- vi 翻页, 行首,行末命令
- Unicode 转换成 Ascii (把Unicode 中文字符串输入到文本中)
- 获得平行四边形中,那条较长的中心线
- Zookeeper的回调函数
- SQL优化--物理优化--表扫描与连接算法
- App接口开发经验谈(2)
- Linux下C编程-----IO/文件操作 模拟linux ls程序显示文件系统树形结构(2)
- JAVAC 命令详解