Я много искал решение, но ничего не работает.
Обновление: публикация внизу
У меня в качестве дочерних элементов есть ScrollView и FrameLayout. Затем я программно настроил EditText с помощью LayoutParams.
Кроме того, я активировал параметры ime, поэтому он автоматически перейдет к следующему Edittext. Когда он переходит к следующему, макет не прокручивается вверх, и клавиатура скрывает EditText.
Ответы типа android: windowSoftInputMode = "adjustPan / adjustResize" не работали. Я также пробовал прокручивать вручную с помощью
Spieler1.setOnKeyListener(new View.OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
int current_pos = scroll2.getScrollY();
scroll2.smoothScrollTo(0,(int)(current_pos + height/4));
scroll2.post(new Runnable() {
@Override
public void run() {
Spieler2.requestFocus();
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
}
});
return true;
}
return false;
}
});
Произошли странные вещи: он хотел прокрутить вверх, но затем внезапно вернулся в исходную позицию, покрывающую EditText.
Понятия не имею, почему он не прокручивается вверх, но, возможно, у вас есть.
Спасибо за ответы.