2017-08-22 6 views
1

Voici comment je montre mon message Toast.Android éviter la fermeture Toast lorsque vous cliquez dessus

Toast.makeText(getActivity(), "This is my Toast message!",Toast.LENGTH_LONG).show(); 

Lorsque je clique sur Toast, il disparaît. Comment puis-je éviter la disparition soudaine de Toast lorsque je clique dessus.

+0

il disparaît automatiquement après l'intervalle de temps. –

+0

Non. Quand je règle LENGTH_LONG, il restera quelques secondes. Mais quand je clique sur le Toast, il se ferme sans rester pendant quelques secondes. Je veux garder Toast pendant quelques secondes sans disparaître mais je clique dessus. – thinuwan

+0

Eh bien, vous devez créer votre propre Toast et gérer le comportement là-bas. Visitez ici pour en créer un: https://developer.android.com/guide/topics/ui/notifiers/toasts.html –

Répondre

2

Toast ne disparaît pas pour les clics soudains. , Il disparaîtra avec la durée u mis

+0

Non. Lorsque je règle LENGTH_LONG, il reste pendant quelques secondes. Mais quand je clique sur le Toast, il se ferme sans rester pendant quelques secondes. Je veux garder Toast pendant quelques secondes sans disparaître mais je clique dessus. – thinuwan

0

Toasts ne se ferme pas sur les interactions que cela dépend de la durée que vous définissez qui sont

LENGTH_SHORT et LENGTH_LONG sont 0 et 1. Si vous voulez quelque chose qui reste plus utiliser actionbar notifications

+0

https://developer.android.com/guide/topics/ui/notifiers/notifications.html –

+0

Non. Lorsque je règle LENGTH_LONG, il reste quelques secondes. Mais quand je clique sur le Toast, il se ferme sans rester pendant quelques secondes. Je veux garder Toast pendant quelques secondes sans disparaître mais je clique dessus. – thinuwan

+0

@thinuwan un toast ne peut pas être cliqué theres pas de vue spécifique derrière elle et si vous vérifiez sur l'API pour toasts theres aucune fonction de clic définie pour elle –

0

Andorid Toast peut être utilisé pour afficher des informations pendant une courte période. Un toast contient un message à afficher rapidement et disparaît après un certain temps.

Vous pouvez également créer des toasts personnalisé ainsi

//Creating the LayoutInflater instance 
      LayoutInflater li = getLayoutInflater(); 
     //Getting the View object as defined in the customtoast.xml file 
      View layout = li.inflate(R.layout.customtoast, 
       (ViewGroup) findViewById(R.id.custom_toast_layout)); 

     //Creating the Toast object 
      Toast toast = new Toast(getApplicationContext()); 
      toast.setDuration(Toast.LENGTH_SHORT); 
      toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0); 
      toast.setView(layout);//setting the view of custom toast layout 
      toast.show(); 

OR .. 

Toast toast=Toast.makeText(getApplicationContext(),"Hello Javatpoint",Toast.LENGTH_SHORT); 
toast.setMargin(50,50); 
toast.show(); 

Vous pouvez utiliser des boucles pour une durée

+0

Non. Quand je définis LENGTH_LONG il restera pendant quelques secondes. Mais quand je clique sur le Toast, il se ferme sans rester pendant quelques secondes. Je veux garder Toast pendant quelques secondes sans disparaître mais je clique dessus. – thinuwan

+0

Je pense que la disposition personnalisée imbriquée peut fonctionner pour vous –

1

Je vous suggère d'utiliser Snackbar.

Snackbar a LENGTH_INDEFINITE attribut sur la durée, donc je pense que c'est à peu près ce que vous vouliez. Toast.LENGTH_LONG est votre longueur de temps changer pour refléter votre besoin.