2012-10-25 2 views
5

Voglio disegnare qualcosa su una foto, dopo aver fatto ciò, è una bitmap. Voglio aggiungere questa Bitmap alla notifica come sua icona. ma l'icona deve essere un ID int. Come posso farcela? grazie per la tua risposta ~~~~ pls hlep me!Come utilizzare una bitmap come icona di notifica

+0

Qual è il problema? Perché attivare? – Abhi

risposta

2

È possibile inserire file di immagine in RES-> disegnabile (o disegnabile-hdpi, ldpi, MDPI), ad esempio notify.png e utilizzarlo

myNotification = new Notification(R.id.notify, "Notification!", System.currentTimeMillis()); 

o

Provare a utilizzare AnimationDrawable di. Puoi usarli per combinare più drawable in uno solo e selezionare quello che vuoi visualizzare. Penso davvero, questa è la strada da percorrere.

Maggiori informazioni: AnimationDrawable

Fuori rotta, si dovrà fornire individuali drawable per tutti i tuoi numeri interi che si desidera visualizzare, ma in questo modo, si può facilmente cambiare l'aspetto delle notifiche

0

si converte bitmap come un drawable e quindi è possibile utilizzarlo come icona di notifica nella finestra di dialogo.

+0

Non è possibile passare l'ID risorsa disegnabile solo drawable come int – voytez

0

Prova questo:

NotificationManager notificationManager= 
      (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 
int icon=R.drawable.ic_launcher; 
CharSequence text="Notification Text"; 
long when=System.currentTimeMillis(); 

Notification notification=new Notification(icon, text, when); 
notificationManager.notify(Constants.NOTIFICATION_ID, notification); 

ho preso l'immagine di default è possibile mantenere file di immagine in RES-> disegnabile (o disegnabile-hdpi, ldpi, MDPI) folder.Assign qualsiasi bitmap per l'icona e si otterrà l'output desiderato.

5

Da questo Post sono venuto a sapere che l'icona di notifica avrà l'immagine delle risorse. Quindi non puoi fare la dinamica in piccola icona. Ma si può fare per l'icona grande da Api Livello 11.

Per questo è possibile utilizzare Notificaiton.BuilderRefer here

altro modo è anche lì. Cioè puoi cambiare l'icona che appare quando la notifica viene tirata giù. Per questo è necessario utilizzare RemoteViews

Refer here

0

provare a utilizzare XML disegnare la vostra immagine, e lo mise in un'icona come n.icon = R.drawable.x;

drawable/x.xml

<?xml version="1.0" encoding="utf-8"?> 
<layer-list 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/write_normal_battery1" /> 
    <item android:drawable="@drawable/notif_0" android:left="5.5dip" android:right="13.5dip" /> 
    <item android:drawable="@drawable/notif_9" android:left="13.5dip" android:right="5.5dip" /> 
</layer-list> 
0

Se si utilizza Android Studio, si può sempre convertire l'immagine originale ad un'attività di immagine e che dovrebbe generare il formato di immagine giusta che si può facilmente utilizzare, vale a dire assegnare un ID. È possibile scegliere di sovrascrivere il nome risorsa predefinito o di uno diverso.