• android:imeOptions


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


     

    设置 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;
    }
    }
     
  • 相关阅读:
    云谷分布式端口扫描与代理验证系统(一)简介
    Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf_爱过了就好_新浪博客
    分享:QT QJson库编译心得
    分享:Zed Attack Proxy 2.0 发布,Web 渗透测试
    LIBTOOL is undefined 解决方法
    linux下.a/.so/.la目标库区别
    LDAmath文本建模
    分享:SchemaCrawler 9.4 发布,数据库结构输出
    JQ也要面向对象~在JQ中扩展静态方法和实例方法
    将不确定变为确定~Flag特性的枚举是否可以得到Description信息
  • 原文地址:https://www.cnblogs.com/qiengo/p/2480857.html
Copyright © 2020-2023  润新知