У меня есть макет деятельности в ниже формеAndroid - Предотвратить клавиатура от смещать при прокрутке
<relativelayout
<scrollview
<linearlayout
<EditText1
<EditText2
<EditText3
</linearlayout>
</scrollview>
</relativelayout>
всякий раз, когда я нажмите на любой редактирования текста появляется виртуальная клавиатура мне нужно достичь ниже Tings
клавиатура должна исчезнуть при нажатии за пределами текста редактирования (работает нормально, поскольку я отклоняю клавиатуру в dispatchTouchEvent() метод).
Клавиатура не должна DISAPPEAR, когда пользователь прокручивает. (В настоящее время исчезает)
Просьба сообщить об этом.
Edit -1 Код добавлен, который освобождает ke`
@Override
public boolean dispatchTouchEvent(MotionEvent event)
{
View view = getCurrentFocus();
boolean ret = super.dispatchTouchEvent(event);
if (view instanceof EditText)
{
View w = getCurrentFocus();
int scrcoords[] = new int[2];
w.getLocationOnScreen(scrcoords);
float x = event.getRawX() + w.getLeft() - scrcoords[0];
float y = event.getRawY() + w.getTop() - scrcoords[1];
if (event.getAction() == MotionEvent.ACTION_UP && (x < w.getLeft() || x >= w.getRight() || y < w.getTop() || y > w.getBottom()))
{
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getWindow().getCurrentFocus().getWindowToken(), 0);
}
}
return ret;
}`
Добавить свой код – VicJordan