IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

onPause qui n'est pas appelé


Sujet :

Android

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2017
    Messages : 6
    Points : 6
    Points
    6
    Par défaut onPause qui n'est pas appelé
    Bonjour à tous,

    Voilà j'ai un petit problème avec la callback onPause.

    J'utilise FragmentStatePagerAdapter avec 3 TabLayout (A, B et C)
    Lorsque l'utilisateur quitte C je souhaite pouvoir désactiver automatiquement le clavier virtuel via la callback onPause.

    Ça marche bien lorsque je quitte C pour A mais pas lorsque je quitte C pour B (dans ce cas onPause n'est pas appelé !)

    Avez-vous une idée ?

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 141
    Points : 177
    Points
    177
    Par défaut
    Oui c'est normal : les éléments suivants et précédents sont conservés (autour du courant). ils ne changent pas d'état.
    Il y a une option dans l'adapter pour forcer le nombre minimum. regarde voir ça.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 141
    Points : 177
    Points
    177
    Par défaut
    c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setOffscreenPageLimit()

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2017
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    j'ai essayé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setOffscreenPageLimit(0)
    mais si je regarde la valeur de cet attribut dans ma classe j'ai toujours 1 (peut être que c'est impossible de mettre 0, pour des raisons d'optimisation…)

    en fait, à la base, je cherche à masquer le clavier virtuel lorsque je sors de C
    il y a peut être un autre moyen que onPause()…

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 141
    Points : 177
    Points
    177
    Par défaut
    à ce moment là regardez voir du côté de

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2017
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    pour être plus efficace il me faudrait

    onPageUnselected() !! qui me permettrait de retrouver le Fragment qui contient le TextView qui au final me permettrait de retirer le focus et de masquer le clavier virtuel.

    c'est quand même dommage qu'il n'y ait pas une callback dans le lifecycle qui permette de savoir que le Fragment n'est plus visible…

    ou bien il va falloir que je tag mes Fragment…

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2017
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Pas de bol pour mes premiers pas sur Android, en faisant un tour sur Stackoverflow la problématique de la gestion du clavier ne semble pas si simple...


    Ma solution inspirée…

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
    @override
    public void onTabSelected(TabLayout.Tab tab) {
    viewPager.setCurrentItem(tab.getPosition());
    }
     
    @override
    public void onTabUnselected(TabLayout.Tab tab) {
    if( tab.getText().toString().compareTo(getString(R.string.tabAddStopCode)) == 0 ) {
    InputMethodManager imm = (InputMethodManager) getSystemService(getApplicationContext().INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(tabLayout.getApplicationWindowToken(), 0);
    }
    }
     
    @override
    public void onTabReselected(TabLayout.Tab tab) {
    }
    });

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 12
    Dernier message: 30/04/2015, 16h07
  2. Réponses: 0
    Dernier message: 07/04/2015, 18h22
  3. Un destructeur qui n'est pas appelé ?
    Par souki22 dans le forum C++
    Réponses: 7
    Dernier message: 30/01/2015, 10h19
  4. Réponses: 3
    Dernier message: 23/06/2011, 16h47
  5. [servlet][filtre] filtre qui n'est pas appelé
    Par felix79 dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 29/06/2005, 20h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo