ListView ne se défile pas pour finir, lorsque le clavier utilise

Mon ListView devrait automatiquement défiler jusqu'à la fin, lorsque le nouveau message est reçu ou envoyé. Mais quand j'utilise le clavier Android pour envoyer un message de EditText ci-dessous ListView, ListView redimensionné et un nouveau message, que je souhaite envoyer, apparaît hors de l'écran et je dois faire défiler vers le bas pour le voir, même si le clavier disparaît et ListView redimensionne de nouveau.

Pour faire défiler ListView j'utilise:

  • Android: utiliser le réseau dans un service
  • Est-ce que la vidéo HTML5 de cache Android peut-elle être mise en ligne avec un mémoire cache hors ligne
  • Position CSS: les images provoquées provoquent des images floues dans les navigateurs Android
  • Comment définir un rapport d'aspect fixe pour une mise en page dans Android
  • / Dev / HAX est manquant chaque fois que je redémarre mon ordinateur
  • ViewPager OnItemClickListener
  •   ListView.postDelayed (new Runnable () { 
    @Passer outre Public void run () { ListView.setSelection (listView.getCount ()); } }, 100);

    Mais ne fonctionne pas correctement dans mon cas.

    Est-ce que quelqu'un sait pourquoi cela peut se produire? Existe-t-il un moyen qui fait TOUJOURS défiler ListView pour finir?

    Merci, votre aide est très appréciée!

  • Comment ouvrir Gmail Composer lorsqu'un bouton est cliqué sur une application Android?
  • Classe enfant Application personnalisée dans Mono pour Android
  • Comment afficher la boîte d'alerte avec Xamarin.Forms pour validation?
  • Existe-t-il un moyen d'obtenir le nom du processus actuel dans Android
  • Les coordonnées de l'écran Android OpenGL ES 2.0 aux coordonnées mondiales
  • READ_LOGS permission sur Jelly Bean (api 16)
  • 3 Solutions collect form web for “ListView ne se défile pas pour finir, lorsque le clavier utilise”

    Vous pouvez essayer d'ajouter cette ligne de code après avoir défini la sélection dans votre liste:

    listView.smoothScrollToPosition(listView.getCount()); 

    Le code résultant devrait ressembler à ceci:

     listView.postDelayed(new Runnable() { @Override public void run() { listView.setSelection(listView.getCount()); listView.smoothScrollToPosition(listView.getCount()); } }, 100); 

    Essayez cette insead de votre code:

     listView.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL); 

    (Ou définissez-le par mise en page XML).

    Définir Android: windowSoftInputMode dans manifeste pour l'activité pour adjustPan|adjustResize .

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.