zoukankan      html  css  js  c++  java
  • android显示和隐藏软键盘

    显示键盘:   
            EditText  editText.setFocusable(true);
            editText.setFocusableInTouchMode(true);
           editText.requestFocus(); 
           InputMethodManager inputManager = (InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); 
           inputManager.showSoftInput(editText, 0); 
    
        首先要对指定的输入框请求焦点。然后调用输入管理器弹出软键盘。
    
        警告:对于刚跳到一个新的界面就要弹出软键盘的情况上述代码可能由于界面为加载完全而无法弹出软键盘。此时应该适当的延迟弹出软键盘如998毫秒(保证界面的数据加载完成)。实例    
        [代码]java代码:
    
         Timer timer = new Timer(); 
          timer.schedule(new TimerTask(){ 
                  public void run(){ 
                      InputMethodManager inputManager = (InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); 
                      inputManager.showSoftInput(editText, 0); 
                  } 
           }, 998); 
          
    隐藏键盘:      
          
        方法二:
        让EditText失去焦点,使用EditText的clearFocus方法
        例如:EditText edit=(EditText)findViewById(R.id.edit);
                   edit.clearFocus();
        方法三:
        强制隐藏Android输入法窗口
        例如:EditText edit=(EditText)findViewById(R.id.edit);
                   InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
                   imm.hideSoftInputFromWindow(edit.getWindowToken(),0);
        警告:对于刚跳到一个新的界面就要弹出软键盘的情况上述代码可能由于界面为加载完全而无法关闭软键盘。此时应该适当的延迟弹出软键盘如998毫秒
        Timer timer = new Timer();
           timer.schedule(new TimerTask(){
                  public void run(){
    EditText edit=(EditText)findViewById(R.id.edit);
                   InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
                   imm.hideSoftInputFromWindow(edit.getWindowToken(),0);

                  }
            }, 998);
    方法四:EditText始终不弹出软件键盘 例:EditText edit
    =(EditText)findViewById(R.id.edit); edit.setInputType(InputType.TYPE_NULL);
  • 相关阅读:
    数据库表设计--备份记录的表设计优化
    WINDOWS CLUSTER -- 时间不同步导致的群集问题
    SQL Server--存在则更新问题
    MySQL--Ansible推送密钥实现免密码登录
    我命由我不由天
    hive中同源多重insert写法
    单文件数据库
    NTP时钟同步配置
    SQL中左连接on and条件和where条件执行先后顺序
    maven引入CDH依赖包
  • 原文地址:https://www.cnblogs.com/java-g/p/4554286.html
Copyright © 2011-2022 走看看