2015-02-18 2 views
2

У меня EditText с <requestFocus /> в XML. когда я открываю Activity в Портрет Режим мягкой клавиатуры Появляется автоматически, но когда я начинаю свою деятельность в Пейзаж Режим мягкой клавиатуры не появился автоматически. Мне нужно касаться EditText для мягкой клавиатуры.SoftKeyboard автоматически не отображается в ландшафтном режиме

Хотите, чтобы мягкая клавиатура появилась автоматически в ландшафтном режиме.

Android Manifest

<activity 
      android:name="activity" 
      android:windowSoftInputMode="adjustResize" 
      > 

Что проблема, пожалуйста, помогите мне

+0

У вас есть продвижение с редактированием моего ответа? Если вы решите свою проблему, не забудьте проверить как правильно –

ответ

2

Пожалуйста, проверьте это, у меня есть тест это решение, и это рабочий идеальный

@Override 
    protected void onResume() { 
     super.onResume(); 
     mUserNameEdit.requestFocus(); 

     mUserNameEdit.postDelayed(new Runnable() { 

      @Override 
      public void run() { 
       // TODO Auto-generated method stub 
       InputMethodManager keyboard = (InputMethodManager) 
       getSystemService(Context.INPUT_METHOD_SERVICE); 
       keyboard.showSoftInput(mUserNameEdit, 0); 
      } 
     },200); 
    } 
+0

Почему вы используете postDelayed? –

0
InputMethodManager imm = (InputMethodManager)this.getSystemService(Service.INPUT_METHOD_SERVICE); 

для шоу клавиатуры использовать это ниже, если условия, я надеюсь, что он будет работать

imm.showSoftInput(ed, 0); 

Вы можете сделать это:

Для Lanscape

if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE){ 
    //Do some stuff 
} 

Для Портрет

if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){ 
    //Do some stuff 
} 
+0

не работает – user1526338

0

Edit: Попробуйте с этим кодом

editText1 = (EditText) findViewById(R.id.editText1); 

InputMethodManager input = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); 
input.showSoftInput(editText1, RESULT_UNCHANGED_SHOWN); 
+0

Я пробовал это решение, но его не работает – user1526338

0
setSoftInputMode(LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE | LayoutParams.SOFT_INPUT_ADJUST_PAN) 
+0

объясните свой ответ, а также @Anil Meenugu – duggu

Смежные вопросы