Teclado suave oculta la barra de acción
Tengo una actividad simple con una vista de texto seguido por dos textos de edición. Cuando empiezo a escribir, el teclado suave empuja el diseño hacia arriba y oculta la barra de acción, y no podré seleccionar / copiar / pegar texto.
Mi actividad se ve así:
- Honeycomb (3.1) adjustResize ya no funciona?
- Cómo configurar diferentes fondos de claves para Android Custom Keyboard
- ¿Disposición emergente en el teclado suave para Android?
- El teclado flexible de Android no se mostrará en 2.2 / 2.3, pero sí en 3.0+
- ¿Cómo comprobar la visibilidad del teclado del software en Android?
Cuando empiezo a escribir, la barra de acción se oculta, como esto – y lo más importante, tenga en cuenta que falta la barra de copia normal de copia aunque se resalte un texto:
¿Qué puedo hacer para asegurarme de que la barra de acción no se oculte?
- He intentado algunos otros consejos de SO (como el uso de vista de desplazamiento), pero ninguno funcionó.
- La aplicación se crea mediante el asistente de Android Studio 1.4.1 con la actividad de cajón.
-
En mi manifesto de actividad estoy usando el ayudstPan. No quiero usar adjustResize.
Android: windowSoftInputMode = "stateAlwaysHidden | adjustPan"
Mi actividad está aquí:
<?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/navigation_drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:openDrawer="start"> <android.support.design.widget.CoordinatorLayout android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:context=".MainActivity"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/app_theme.app_bar_overlay"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/app_theme.popup_overlay" /> </android.support.design.widget.AppBarLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="@dimen/activity_margin" android:fillViewport="true" android:orientation="vertical" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="0.5" android:background="@android:color/darker_gray" android:text="My holiday story here." /> <View android:layout_width="match_parent" android:layout_height="@dimen/activity_margin" /> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="@dimen/gap_normal" android:gravity="top" android:text="My Holiday in Europe" /> <EditText android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="0.5" android:gravity="top" android:text="My holiday story is blah blah blah blah blah blah blah blah blah..." /> </LinearLayout> </android.support.design.widget.CoordinatorLayout> <com.magicparcel.app.mysampleapp.ui.CustomNavigationView android:id="@+id/navigation_view" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" android:fitsSystemWindows="true" app:headerLayout="@layout/navigation_drawer_header" app:itemIconTint="@color/app_grey_500" app:menu="@menu/drawer_main" /> </android.support.v4.widget.DrawerLayout>
- ¿Cómo puedo restringir mi entrada de EditText a algún carácter especial como barra invertida (/), tild (~) etc por el teclado suave en android programaticamente
- Cómo detener el teclado virtual que se muestra automáticamente cuando se cambia el enfoque (evento OnStart)
- ¿Cómo cambiar el color de fondo de la tecla para el teclado suave android?
- El teclado suave levanta tabhost hacia arriba
- ¿Hay alguna forma de ocultar el teclado virtual permanentemente pero mantener la habilitación de enfoque para un EditText?
- ¿Puedo usar el teclado virtual sin un EditarTexto?
- NumberPicker en AlertDialog siempre activa el teclado. ¿Cómo desactivar esto?
- ¿Cómo hacer que el Teclado Suave aparezca una vez que muestro un Diálogo con un EditText?
Prueba agregando la app:layout_collapseMode="pin"
en la barra de herramientas
<android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:layout_collapseMode="pin" app:popupTheme="@style/app_theme.popup_overlay" />
Y para habilitar copiar / pegar en editText Set android:textIsSelectable="true"
mirar más en https://developer.android.com/guide/topics/text/copy-paste.html
Añade tu barra de herramientas dentro de AppBarLayout y agrega los temas AppBarOverLay y PopOverlay.
<android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/AppTheme.AppBarOverlay"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="@color/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay"> </android.support.v7.widget.Toolbar> </android.support.design.widget.AppBarLayout>
Styles.xml
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" /> <style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
Paso 1 : Elimine el atributo fitsSystemWindow
de cada vista y agréguelo en la etiqueta de actividad del manifiesto.
Paso 2 : app:layout_behavior="@string/appbar_scrolling_view_behavior"
Elimine esta línea de su diseño lineal. Este es el código que en realidad está empujando la barra de acción de arriba.
Estos dos pasos resuelto mi problema, Espero que te ayude también.
- ¿Cómo clonar un repositorio git remoto con Android Studio?
- Programáticamente establecer la sugerencia de texto de edición en android?