Android开发中软键盘的解析

来源:爱站网时间:2020-08-13编辑:网友分享
在Android开发中,通过设置活动的windowsoftinputmode属性,可以控制软键盘与活动主窗口的交互方式,接下来,就让爱站技术频道小编来讲解一下Android开发中软键盘的解析吧,希望能帮到大家。

在Android开发中,通过设置活动的windowsoftinputmode属性,可以控制软键盘与活动主窗口的交互方式,接下来,就让爱站技术频道小编来讲解一下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开发中软键盘的解析,今天已经很明确的给大家介绍了,相信对这方面学习的内容还意犹未尽,快点击收藏js.aizhan.com学习更多的知识吧!

上一篇:如何在Android listview中正确使用setemptyview

下一篇:Android开发中子线程和UI线程通信的详细介绍

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载