android EditText自动弹出和自动关闭软键盘

程序进入某个activity直接弹出软键盘,不能直接在OnCreate中设置,必须等View绘制事件完毕才可以弹出,需要用到Timer辅助实现,如果要实现输入的功能,必须让EditText获得焦点。

 

//应用启动后自动打开输入法

@Override
 public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.main);

      Timer timer = new Timer();
        timer.schedule(new TimerTask() {
           @Override
                public void run() {
                        InputMethodManager imm = (InputMethodManager)MainActivity.this.getSystemService(INPUT_METHOD_SERVICE); 
                        imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS); 
                        Toast.makeText(MainActivity.this, "show", Toast.LENGTH_SHORT).show();
                     }

              }, 1000);  //在一秒后打开

}

 

自动关闭:
 InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
 imm.hideSoftInputFromWindow(editTextField.getWindowToken(), 0);


禁止弹出:

  <activity 

            android:name=".ClientSearchViewActivity"
            android:label="@string/app_name" 
            android:screenOrientation="portrait"
            android:windowSoftInputMode="adjustUnspecified|stateHidden"
            android:configChanges="orientation|keyboardHidden">
        </activity> 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。