Bouton personnalisé Android Toast?
Est-il possible d'avoir un bouton dans un Toast?
En théorie, oui, parce que vous pouvez construire une coutume Toast à partir d'un modèle en XML, mais j'ai essayé de mettre un bouton en elle et ne pouvait pas l'obtenir pour vous inscrire cliquez sur le.
Quelqu'un arrive à faire quelque chose comme ça?
Vous devez vous connecter pour publier un commentaire.
Un toast ne peut pas être cliqué. Il n'est pas possible de capturer d'un clic à l'intérieur d'un toast message.
Vous aurez besoin de construire un dialogue pour que. Regardez Création De Boîtes De Dialogue pour plus d'info.
L'API sur la Toast état de classe qu'un toast ne sera plus jamais recevoir le focus et parce qu'un toast n'est pas un point de vue il n'y a pas de onClick message. Je suppose que, par conséquent, childs un Toast ne peut pas être cliqué ainsi.
Un toast cant contiennent un bouton. Sauf que l'application gmail et l'application galerie dans les fèves à la gelée d'avoir un semi toast, qui contient un bouton, voici comment Google fait-il
https://gist.github.com/benvd/4090998
Je suppose que cela répond à votre question.
Montre l'extrait de code de mise en œuvre de la coutume Toast que:
Toast
classeDialog
(avoir des boutons cliquables comme Gmail app)length
dansmillis
Activity
Limitations Actuelles:
Utilisation:
Sources
Mon premier post sur github
Post qui montre la mise en œuvre de la mise en page personnalisée dans ce post
Une vue personnalisée passé à un toast peut contenir quoi que ce soit; toutefois, les toasts ne peut pas recevoir tous les événements tactiles donc pas de composants qui utilisent les événements tactiles va travailler dans un stock de pain grillé (les boutons, les radiobuttons, etc.). Le seul choix que vous avez est de créer une vue personnalisée avec un bouton et de l'ajouter à votre disposition. Il existe de nombreux exemples de comment faire ceci et un peu de bibliothèques, vous pouvez vérifier pour voir comment d'autres gens le font.
UndoBar
MessageBar
Nurik de UndoBar
Bien sûr, vous êtes également invités à utiliser le SuperToasts bibliothèque j'ai mis ensemble, cependant, il pourrait être un peu exagéré pour une utilisation. La façon que je le fais, il est indiqué dans le SuperActivityToast classe.
Vous devez utiliser un
Snackbar
. C'est dans le dernier android support library(au temps de réponse) et est compatible avec les anciennes api niveaux. Il est beaucoup plus facile à mettre en œuvre que d'unDialog
ou personnaliséView
et a la possibilité d'avoir un bouton à la différence d'unToast
.Android Support Library
deExtras
dans leSDK Manager
(révision 22.2.1 ou plus tard).build.gradle
ajouter à la classe des dépendances:com.android.support:design:22.2.0
.Mettre en œuvre:
Snackbar.make(this.findViewById(android.R.id.content), "Toast Message", Snackbar.LENGTH_LONG)
.setAction("Click here to activate action", onClickListener)
.setActionTextColor(Color.RED)
.show;
Et c'est tout. Pas de github projets et la mise en œuvre est très similaire à
Toast
. Je l'ai utilisé dans un de mes projets et il fonctionne très bien.Vous pouvez essayer SuperToast dans ce cas. Il peut créer des toast avec le bouton. Il a une durée personnalisée fonctionnalité, coloré, fond, coloré, les polices, les polices personnalisées, effet d'animation. Hope u va en profiter
Utiliser une alertbox, si vous voulez ajouter un bouton :-). Voici quelques exemples
Les boîtes de dialogue dans Android
La création d'un système de superposition de la fenêtre (toujours au top)
C'est ce qui suggère qu'il peut être fait, j'ai aussi besoin de boutons dans un toast donc j'ai encore à faire ma propre mise en œuvre. Si je trouve plus je vais l'ajouter à mon post