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);
  • 相关阅读:
    ASP.Net中实现XMl的标识列(ID列)或自增长列
    ASP.Net 更新储存在xml文件中的数据(update操作)
    系统分析师(1)网站介绍
    ASP.Net 删除xml文件中的数据(delete操作)
    DataGrid利用imagebutton实现更新操作
    DataGrid利用imagebutton实现删除操作
    JavaScript总结(1)Asp.Net 中利用JavaScript实现客户端验证
    sql server 2005 压缩实例下所有数据库文件及日志文件(转载)作者:Program Life
    Spreadsheet 对象
    多参数sp_executesql
  • 原文地址:https://www.cnblogs.com/java-g/p/4554286.html
Copyright © 2011-2022 走看看