0
votes

Comment puis-je éviter une barre d'outils mobile lorsque le clavier est ouvert dans une activité complète?

Dans mon application, lorsque le clavier est invoqué, la barre d'outils est déplacée vers le haut. Comment puis-je empêcher la barre d'outils de se déplacer vers le haut?

Voici le code pour rendre l'activité Plein écran: P>

<RelativeLayout xmlns:android=".."
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">
    <android.support.design.widget.AppBarLayout
        android:layout_alignParentTop="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:background="@drawable/toolbar_background">

        <include layout="@layout/layout_toolbar" />
    </android.support.design.widget.AppBarLayout>

    <ScrollView.......>

    <RelativeLayout......>

    <EditText....><!--There are multiple EditTexts here.-->

</RelativeLayout>


3 commentaires

Pourriez-vous publier votre mise en page pour plus d'informations


Disposition: ​​< .


Pourriez-vous s'il vous plaît ajouter cela comme une édition à votre question initiale en tant que bloc de code de sorte qu'il soit plus lisible


3 Réponses :


0
votes

Ajouter Android: FitsSystemWindows = "vrai" dans la disposition racine de la barre d'outils

la plupart du temps, votre application n'aura besoin de dessiner sous la barre d'état ou la barre de navigation, mais si vous faites: vous devez vous assurer interactif Les éléments (des boutons comme des boutons) ne sont pas cachés sous eux. C'est ce que le Comportement par défaut de l'Android: FitsSystemWindows = "True" Attribut vous donne: il définit le rembourrage de la vue pour assurer le contenu Ne superposez pas les fenêtres système.

Quelques choses à garder à l'esprit:

FITSSYSTEMWindows est appliqué de la profondeur - Matteaux de commande: c'est le première vue qui consomme les encarches qui fait une différence

de https://medium.com/androidDevelopers/ Pourquoi-i-I-Want-Want-to-FitsSystemWindows-4E26D9CE1EEC

Fondamentalement, vous dites à la barre d'outils de ne pas vous déplacer et de rester en haut et de déplacer les vues sous le sous-ci en dessous de celui-ci


7 commentaires

.


Android: FitsSystemWindows = "vrai" ça ne fonctionne pas pour moi


Pourquoi votre AppBarlayout est-il à l'intérieur d'une relativation?


Mon activité en mode plein écran J'ai un scénario: Scroll UI complet à l'exception de la barre d'outils. BCZ Il faut déplacer l'écran complet ci-dessous la barre d'outils que la raison pour laquelle j'écris Relativitelayout en tant que mise en page parent


Quel est le lien entre la fonctionnalité en plein écran et la relativenelle? Toute mise en page peut être réalisée en plein écran, y compris AppBarlayout (qui est fondamentalement une linearlayout fantaisie)


BCZ, j'ai besoin de faire défiler la vue derrière la présentation de la barre d'outils cette raison pour laquelle j'ajoute Relativitelayout. linearlayout ne donne pas cette fonctionnalité. J'ai joint l'image Comment faire défiler Je nedd. le plient voir ces


Mais ma question est de savoir comment empêcher la barre d'outils de déplacement vers le haut dans l'activité plein écran lorsque le clavier invoque



1
votes

Ajouter cette ligne dans menifests pour Activité CODE>

android:windowSoftInputMode="adjustResize"


1 commentaires

Cela compressera la mise en page qui n'est pas une bonne façon de le faire.



0
votes

Vous pouvez utiliser un collapsingtoolbarlayout s'il correspond à votre exigence d'interface utilisateur à l'intérieur de l'AppBarlayout.

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <android.support.design.widget.CollapsingToolbarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <android.support.v7.widget.Toolbar 
           xmlns:android="http://schemas.android.com/apk/res/android"
           xmlns:ripple="http://schemas.android.com/apk/res-auto"
           android:id="@+id/tv_toolbar"
           android:layout_width="match_parent"
           android:layout_height="50dp"
           android:background="#fff"
           ripple:contentInsetStart="0dp">
        </android.support.v7.widget.Toolbar>

    </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>


0 commentaires