Кнопка скрытия мягкой клавиатуры Android
У меня есть простой вид входа, как показано ниже.
Если какой-либо EditText
получает фокус, клавиатура будет отображаться (мягкая). Красная пунктирная линия должна описать это поведение:
Мне нужно, чтобы кнопки внизу (регистрация и помощь) были невидимы, пока отображается клавиатура. Нижний конец кнопки входа в систему должен быть над клавиатурой, так что видны как EditTexts
и Login Button
.
В лучшем случае половина логотипа должна быть видимой, если возможно (в зависимости от размера экрана)
Было бы прекрасно определить дополнительный макет xml, например, "клавиатура видна", если это возможно.
Ответы
Ответ 1
1) ScrollView
как родительский макет, чтобы он мог прокручиваться пользователем.
2) используя только adjustResize
3) Используйте программную клавиатуру show/hide event, чтобы иметь больше контроля. Вы можете установить видимость макета ниже кнопки входа в систему с помощью View.GONE, а клавиатура - visibe.
дополнительно:
Проверка Определение типа метода ввода. Следующие и Готовые действия для удобства пользователя
Ответ 2
Сделайте что-нибудь подобное. Здесь "андроид: имя" - ваша деятельность.
<activity
android:name="com.example.tryitonjewelry.EnterStoreRegisterNew"
android:label="@string/title_activity_enter_store_register_new"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustPan">
<intent-filter>
<action android:name="android.intent.action.ENTERSTOREREGISTERNEW" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
Ответ 3
Вы можете управлять им несколькими шагами. Когда всплывающее окно KeyBoard
выполняет следующие шаги или вы можете обернуть их в метод...
- Получите высоту окна.
- Определите высоту клавиатуры.
- Прокрутите свой вид над высотой клавиатуры, используя
scrollTo()
.