У меня есть TextView
, который постоянно перемещается каждый раз, когда я нажимаю на свой EditText
и открываю клавиатуру мягкого ввода. EditText
расположен в нижней части страницы. Я хочу, чтобы TextView
, который у меня есть, не перемещается, когда появляется клавиатура. В моем случае, TextView
называется No comments to display.
Вот пример того, что происходит, когда я нажимаю на моем EditText
Сделать TextView не двигаться, когда клавиатура находится на экране
Первоначально TextView
содержится в светлой серой зоне ниже, но когда я нажимаю на EditText
, он подталкивается. Вот мой код:
public class Comments extends AppCompatActivity {
private TextView noCommentsView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.comments);
EditText comment = (EditText) findViewById(R.id.write_comment);
TextView noCommentsView = (TextView) findViewById(R.id.no_comments_text);
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
noCommentsView.setVisibility(View.VISIBLE);
}
}
Теперь я знаю, что adjustResize
просто толкает все вверх и именно поэтому TextView
получает толкнул вверх так высоко. Тем не менее, я хочу, чтобы TextView
остался на месте. Я попытался использовать getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING);
, и это выполняет мою цель, но EditText
не перемещается с клавиатуры, потому что весь макет не отрегулирован. Есть ли способ обойти это? Есть ли способ передвижения вверх по EditText
, но у вас нет TextView
двигаться вверх? Благодаря!
Пробовали ли вы 'adjustPan'? –
Возможный дубликат проверки моего ответа здесь http://stackoverflow.com/questions/37162919/how-to-make-button-stay-on-the-bottom-when-soft-keyboard-goes-up/37163111#37163111 –