J'essaie d'ajouter des badges aux icônes de mon application Android. par exemple. dans l'application facebook (pour iPhone), dans la page d'accueil, le nombre de demandes en attente est indiqué sur l'icône des demandes.
Quelqu'un peut-il fournir des liens/idées sur la façon de procéder?
Merci
Si vous voulez vraiment le faire. Utilisez une variable FrameLayout
qui contient une variable ImageView
avec votre icône et une variable TextView
avec un clip de neuf points pouvant être dessiné comme arrière-plan dans le coin droit. Ajoutez des marges à la ImageView
si vous voulez que le badge soit un peu en dehors de l'icône.
Merci Alexanderblom, pour les astuces.J'ai utilisé cette logique et j'ai réussi à créer un badge sur une imageicon interne.Il y a le fichier XML.
<FrameLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@+id/frameLayout1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content" >
<ImageView
Android:id="@+id/imageView1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:src="@drawable/ic_launcher" />
<TextView
Android:id="@+id/textView1"
Android:layout_width="20dip"
Android:layout_height="20dip"
Android:text="5"
Android:textColor="@color/black"
Android:textStyle="bold"
Android:padding="2sp"
Android:gravity="center"
Android:background="@drawable/circle"
Android:layout_gravity="top|right" />
</FrameLayout>
et le circle.xml est
<item>
<shape Android:shape="oval">
<solid Android:color="@Android:color/black" />
</shape>
</item>
<item Android:top="1dp" Android:left="1dp" Android:right="1dp" Android:bottom="1dp">
<shape Android:shape="oval">
<solid Android:color="@color/Red" />
</shape>
</item>
Android ne prend pas en charge les badges sur les icônes.
Au lieu de cela, il fournit le système de notification (icônes dans la barre de notification, etc.), ainsi que la possibilité de créer widgets qui peuvent être ajoutés au "Bureau" des utilisateurs.
vérifier cette bibliothèque qui ajoute un badge à l'icône/bouton/onglet
Essayez celui-ci, c'est bon pour Sony, Samsung, LG, HTC, Xiaomi, ASUS, ADW, APEX et NOVA Launchers.
Suivez ci-dessous la procédure à suivre pour ajouter un nombre de notifications à l'icône de l'application.
Pas:
Ajoutez mavenCentral à votre script de construction.
référentiels {mavenCentral ()}
Ajouter des dépendances dans votre niveau d'application.
dependencies { compile 'me.leolin: ShortcutBadger: 1.1.4@aar' ou compile 'me.leolin: ShortcutBadger: 1.1.3@aar' }
Ajoutez les codes ci-dessous pour afficher le nombre de notifications sur l'icône de l'application:
int badgeCount = 1; ShortcutBadger.applyCount (context, badgeCount); // pour 1.1.4 ou ShortcutBadger.with (getApplicationContext ()). count (badgeCount); // pour 1.1.3
Si vous souhaitez supprimer le badge
ShortcutBadger.removeCount (context); // pour 1.1.4 ShortcutBadger.with (getApplicationContext ()). remove (); // pour 1.1.3 ou ShortcutBadger.applyCount (context, 0); // pour 1.1.4 ShortcutBadger.with (getApplicationContext ()). count (0); // pour 1.1.3