1. 程式人生 > >Android中的EditText預設時不彈出軟鍵盤的方法

Android中的EditText預設時不彈出軟鍵盤的方法

在做專案過程中 , 父 Activity 中 用 ViewPager 中 的子 Activity EditText預設彈出軟鍵盤。這是想遮蔽 軟鍵盤 應該從 父 Activity 中處理。處理子 Activity 達不到效果。

      在 父 Activity 中 onCreate 中加上

       getWindow().setSoftInputMode(   WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

       OK.

其他遮蔽軟鍵盤方法:

方法一: AndroidMainfest.xml中選擇哪個activity設定windowSoftInputMode屬性為 adjustUnspecified|stateHidden

   < activity android:name=".Main"

      android:label="@string/app_name"

      android:windowSoftInputMode="adjustUnspecified|stateHidden"

      android:configChanges="orientation|keyboardHidden">

  < intent-filter>

  < action android:name="android.intent.action.MAIN" />

  < category android:name=

"android.intent.category.LAUNCHER" />

  < /intent-filter>

  < /activity>

方法二:讓 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);