2013-03-16 3 views
0

Я использую 2 FrameLayout, у них есть EditText, если я нажму на editText, который находится в нижней части макета, можно увидеть над softKeyboard, но если я нажму на editBox, frameLayout которого выше другое место FrameLayout не изменяется и не помещается за клавиатуру, а frameLayout, который внизу, снова меняет свое место, и он отображается над мягкой клавиатурой.Положите EditText над мягкой клавиатурой

Я попытался,

mMessageBox.setOnFocusChangeListener(new View.OnFocusChangeListener() { 
    @Override 
    public void onFocusChange(View v, boolean hasFocus) { 
     Commons.logCatchya("onFocusListener changed !"); 
     if (hasFocus) { 
      Commons.logCatchya("onFocusListener hasFocus !"); 
     } 
     else { 
      Commons.logCatchya("onFocusListener do not hav focus !"); 
     } 
    } 
}); 

mMessageBox.setOnKeyListener(new View.OnKeyListener() { 

    @Override 
    public boolean onKey(View v, int keyCode, KeyEvent event) { 
     Commons.logCatchya("setOnKeyListener :" + event.getAction() + " keyCode :" + keyCode); 
     return false; 
    } 
}); 


mProfileStatusBox.setOnFocusChangeListener(new View.OnFocusChangeListener() { 

    @Override 
    public void onFocusChange(View v, boolean hasFocus) { 
     Commons.logCatchya("onFocusListener mProfileStatusBox changed !"); 
     if (hasFocus) { 
      Commons.logCatchya("onFocusListener mProfileStatusBox hasFocus !"); 
     } 
     else { 
      Commons.logCatchya("onFocusListener mProfileStatusBox do not hav focus !"); 
     } 

    } 
}); 

но если я нажимаю скрыть программную кнопку клавиатуры на экране curser все еще находится на EditBox, что я использовал. Это проблема из-за FrameLayout? Не то, что я должен сделать, чтобы решить эту проблему.

ответ

1

Я решил проблему с помощью RelativeLayout и используя

android:gravity="bottom" 

в файле макета.

1

Установите это для вашей деятельности тега в вашей деятельности

android:configChanges="keyboardHidden|orientation" 

, если он не работает для вас пытаются установить родительский расположение в ScrollView

1

Я уверен, что вы используете LinearLayout настройки его width и height - full_parent.
Не делайте этого, используйте вместо RelativeLayout установив height на:

android:layout_height="wrap_content"

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