ниже кнопка. Нужно чтобы при открытии клава не перекрывала кнопку,а сдвигала всё содержимое скролла вверх. Сейчас клава просто выравнивается по нижнему краю едиттекста. AdjustPan / adjustResize тут роли не играют. Возможно ли такое вообще?
Андроид пытается показать столько, сколько влезает на экран и чтобы при этом поле ввода было в фокусе. Ты можешь гарантировать, что на экране поменьше и со шрифтами побольше всё это поместится?
Конечно поместится,у меня же всё в скролле, при adjustResize он просто контент вверх толкает когда клава появляется. Мне нужно чтобы андроид поднял вверх не только контент выше эдиттекста, но и кнопку снизу.
у вас style fullscreen?
Попробуйте поменять местами кнопку и поле ввода, просто для теста. Наверняка андроид её поднимет для того, чтобы поле ввода было видно на экране :)
нет, но transparent statusbar
к сожалению я делаю задачу по макету и не могу менять порядок элементов
у activity какой style?
Я же говорю - для проверки. Понятно, что дизайн и все такое.
А ,не заметил.Конечно андроид поднимает и при таком распложении всё ок, но у меня то другой случай
Я к тому, что андроид хочет сделать поле ввода в фокусе видимым. Всё! Остальное его не интересует.
Theme.AppCompat.DayNight.NoActionBar
Понятно, видимо всё-таки без костылей не обойтись.Просто из-за того андроид выравнивает всё так,чтобы была видна строка куда вводишь текст и не более, есть проблемы с многострочным хинтом. То есть когда в первый раз появляется клава, вводишь ты в первую строку, а хинт занимает 2 и более, и соотвественно ты эты строки не видишь
Издержки маленьких экранов. Это нужно учитывать.
Почему маленьких? Хинт большой, и на больших экранах тоже 2 строки занимает.
Маленькие экраны не могут вместить всё сразу.
Единственное решение которое я придумал, это заюзать тот факт, что клава выравнивается по нижнему краю едиттекста + нижний паддинг. То есть я могу посчитать нассколько мне надо увеличить нижний паддинг при открытии клавы,чтобы были видны все строки хинта. Но проблема в том что при закрытии его надо убирать обратно а мониторинг состояния клавы через OnGlobalLayout выглядит очень не надёжно
Если приходится извращаться, то это явный признак, что что-то делается неправильно.
А как правильно? Гугл многострочный хинт просто по всем фронтам обделили. Тот же TextInputLayout его не поддерживает,обрезает. Писать свой editText наверно запарно
Задача какая? Гарантированно показать хинт у поля ввода? Или кнопку поднять?
Гарантированно показать весь хинт в поле ввода, и чтобы editText был в скролле а не зафиксирован внизу экрана. Про кнопку я спросил потому что мне показалось что это более распространённая проблема и при этом смежная
Поскольку андроид показывает поле ввода сразу над клавой, то можно показывать хинт над полем ввода. Места для этого должно быть достаточно (почти всегда)
Через инсеты такое чекают мне сказали
Обсуждают сегодня