欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android开发之软键盘用法实例分析

程序员文章站 2023-02-02 11:19:00
本文实例讲述了android开发中软键盘用法。分享给大家供大家参考。具体如下: 打开软键盘,有两个方法。一个是showsoftinput,一个是togglesoftinp...

本文实例讲述了android开发中软键盘用法。分享给大家供大家参考。具体如下:

打开软键盘,有两个方法。一个是showsoftinput,一个是togglesoftinput。

package com.example.dd; 
import android.app.activity; 
import android.content.context; 
import android.os.bundle; 
import android.view.menu; 
import android.view.view; 
import android.view.view.onclicklistener; 
import android.view.inputmethod.inputmethodmanager; 
import android.widget.button; 
import android.widget.edittext; 
public class mainactivity extends activity { 
  @override 
  protected void oncreate(bundle savedinstancestate) { 
    super.oncreate(savedinstancestate); 
    setcontentview(r.layout.activity_main); 
    final edittext ed2 = (edittext) findviewbyid(r.id.edittext2);
    button b1 = (button) findviewbyid(r.id.button1); 
    b1.setonclicklistener(new onclicklistener() { 
      @override 
      public void onclick(view v) { 
        ed2.requestfocus(); 
        show(ed2); 
      } 
    });
    button b2 = (button) findviewbyid(r.id.button2);
    b2.setonclicklistener(new onclicklistener() {
      @override
      public void onclick(view v) {
        toggle();
      }
    });
  }
  private void show(edittext ed2) {
    inputmethodmanager imm = (inputmethodmanager) getsystemservice(context.input_method_service);
    imm.showsoftinput(ed2, inputmethodmanager.show_implicit);
  }
  private void toggle() {
    inputmethodmanager imm = (inputmethodmanager) getsystemservice(context.input_method_service);
    imm.togglesoftinput(0, 0);
  }
  @override
  public boolean oncreateoptionsmenu(menu menu) {
    // inflate the menu; this adds items to the action bar if it is present.
    getmenuinflater().inflate(r.menu.main, menu);
    return true;
  }
}

其中show方法在使用之前,必须先让它的第一个参数requestfocus。可以看show方法的注释:

synonym for showsoftinput(view, int, resultreceiver) without a result receiver: explicitly request that the current input method's soft input area be shown to the user, if needed.

最后的 if needed两个单词,意思是说,如果调用了这个方法而且确实是有必要显示键盘的时候,才会弹出软键盘。

toggle方法可以随意的打开和关闭软键盘。

希望本文所述对大家的android程序设计有所帮助。