2017-10-16 6 views
-2

Dans mon application Android, je dois traiter les entrées utilisateur en exécutant des calculs très complexes. Donc, je voudrais l'exécuter lorsque l'utilisateur reste inactif pendant un certain temps. Par exemple. l'utilisateur a entré le numéro 123 et a ensuite cessé d'entrer. Je veux lancer le calcul quand 3 est entré et ne pas après 1 ou 2. Comment puis-je faire cela en utilisant RxJava2?Comment émettre une valeur entrée après que l'utilisateur a fini de saisir avec RxJava2

+0

Bienvenue sur StackOverflow! Veuillez consulter les [guides pour poser des questions] (https://stackoverflow.com/help/asking), en particulier [comment créer un exemple minimal, complet et vérifiable] (https://stackoverflow.com/help/mcve) – AesSedai101

Répondre

2

il y a 2 solutions

1.

  • Écouter des événements au niveau de l'application
  • piste l'intervalle de temps entre ces événements
  • Faites vos calculs si lastInputTime = idletime

2.

  • utilisation TextWatcher avec afterTextChanged
  • utilisation postDelayed gestionnaire
  • Faites votre calcul