600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Android 软键盘的确定键修改

Android 软键盘的确定键修改

时间:2021-09-28 22:06:19

相关推荐

Android 软键盘的确定键修改

转载自博客:Android EditText imeOptions属性详解

在我们的手机中,虽然通常输入法软键盘右下角会是回车按键,但我们经常会看到点击不同的编辑框,输入法软键盘右下角会有不同的图标。例如:

点击浏览器网址栏的时候,输入法软键盘右下角会变成“GO”或“前往;

而我们点击Google搜索框,输入法软键盘右下角会变成 放大镜 或者“搜索”。

而决定这个图标的变换的参数就是EditText中的 android:imeOptions属性。android:imeOptions的值有actionGo、 actionSend 、actionSearch、actionDone等

注意:需要和android:singleLine=”true”搭配使用

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

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

在这里设置的imeOptions如何使用呢?如下面的代码,让EditText实现OnEditorActionListener接口,在onEditorAction方法中actionId就对应我们设置的imeOptions。系统默认的actionId有:EditorInfo.IME_NULL、EditorInfo.IME_ACTION_SEND、EditorInfo.IME_ACTION_DONE等。这样我们就可以根据不同的EditText来实现不同的软键盘右下角功能键。

public class IMEOptionsActivity extends Activity implements OnEditorActionListener {EditText etDone; EditText etEmail; EditText etNumber; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.imf_layout); etDone= (EditText)findViewById(R.id.done_content); etEmail = (EditText)findViewById(R.id.email_content); etNumber = (EditText)findViewById(R.id.number_content); etDone.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("Done_content: " + v.getText() ); break; case EditorInfo.IME_ACTION_SEND: System.out.println("send a email: " + v.getText()); break; case EditorInfo.IME_ACTION_DONE: System.out.println("action done for number_content: " + v.getText()); break; } return true; } }123456789101112131415161718192223242526272829303132333435363738

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。