Puis-je définir un message pour apparaître comme une "info-bulle" pour un TextView ou un bouton?Puis-je définir quelque chose comme "tooltip" pour une vue dans Android?
Répondre
Il n'y a pas de concept de "survol" dans un écran tactile, mais vous pouvez définir un LongClickListener pour votre vue et afficher un Toast après un appui long. Quelque chose comme ceci:
Toast viewToast = Toast.makeText(this, "My View Tooltip", Toast.LENGTH_SHORT);
View myView = (View)findViewById(R.id.my_view);
myView.setOnLongClickListener(new OnLongClickListener() {
@Override
public void onLongClick(View v) {
viewToast.show();
}
});
EDIT: Après avoir lu votre commentaire, vous devez simplement utiliser l'attribut hint
dans votre EditText XML mise en page:
<EditText
android:hint="My tip here" />
"hovering in touch screen" est maintenant possible en 2013 :) –
-Premier définir un textview avec votre touche et réglez-le invisible.
-Créer un fichier XML d'animation avec une animation alpha, indiquez combien de temps vous souhaitez afficher (à la fin que l'animation à zéro alpha afin qu'il reste invisible) et le mettre dans res-> dossier anim
-Intérieur vos méthodes de vue onCreate et onClick qui ont besoin toolTip
- définir la vue de texte visible
- Accrocher l'animation (comme R.anim.tooltip) à ce point de vue texte
-Utilisez des indicateurs booléens et autorisez l'utilisateur à désactiver les info-bulles dans le menu.
Je vais vous laisser les détails du code. Vous les trouvez facilement dans stackoverflow.
Les infobulles fonctionnent habituellement en apparaissant au survol de la souris (survol). Comment une info-bulle fonctionnerait-elle sur un appareil à écran tactile, où il n'y a pas de pointeur de souris persistant? Voir aussi le commentaire de CommonsWare [ici] (http://stackoverflow.com/questions/3350020). –
Pas exactement une info-bulle, pour être plus clair ... quand je mets le curseur dans une vue EditText j'ai besoin d'un message pour apparaître! – Adham
Okay. De quel genre de message parlons-nous ici? Une image de maquette aiderait à expliquer ce que vous recherchez. –