Android NotificationManager簡單使用詳解
本文實(shí)例為大家分享了Android NotificationManager的簡單使用代碼,供大家參考,具體內(nèi)容如下
我們有時候需要使用通知,先要獲得一個通知管理器,然后通過通知管理器來發(fā)送通知。以下就是幾種通知的使用:
public class MainActivity extends Activity { private NotificationManager manager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //1.使用通知,先要獲得一個通知管理器 manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); //點(diǎn)擊此按鈕發(fā)出一條通知(普通的通知) findViewById(R.id.button1).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Builder builder = new NotificationCompat.Builder(MainActivity.this); builder.setSmallIcon(R.drawable.ic_launcher) .setContentTitle("我是測試用的普通通知").setContentText("測試測試"); //當(dāng)通知被點(diǎn)擊的時候使用 Intent intent = new Intent(); intent.setClass(MainActivity.this, MainActivity.class); //PendingIntent 等待的意圖 PendingIntent intent2 = PendingIntent.getActivity(MainActivity.this, 0, intent, Notification.FLAG_AUTO_CANCEL); builder.setContentIntent(intent2); //通知點(diǎn)擊以后消失 builder.setAutoCancel(true); Notification notification = builder.build(); //發(fā)送通知 manager.notify(0,notification); } }); findViewById(R.id.button2).setOnClickListener(new OnClickListener() { //進(jìn)度通知 @Override public void onClick(View v) { new Thread(){ public void run() { Builder builder = new NotificationCompat.Builder(MainActivity.this); for (int i = 0; i <=100; i++) { //progress當(dāng)前進(jìn)度 //indeterminate是否精確 builder.setProgress(100,i , false); manager.notify(1,builder.build()); //必須設(shè)置setSmallIcon builder.setSmallIcon(R.drawable.ic_launcher); try { Thread.sleep(200); } catch (InterruptedException e) { e.printStackTrace(); } } manager.cancel(1); }; }.start(); } }); findViewById(R.id.button3).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Builder builder = new NotificationCompat.Builder(MainActivity.this); builder.setSmallIcon(R.drawable.ic_launcher) .setContentTitle("標(biāo)題") .setContentText("test"); BigPictureStyle style = new NotificationCompat.BigPictureStyle(); style.bigPicture(BitmapFactory.decodeResource(getResources(),R.drawable.c)); style.setBigContentTitle("通知"); builder.setStyle(style); manager.notify(2, builder.build()); } }); findViewById(R.id.button4).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Builder builder = new NotificationCompat.Builder(MainActivity.this); builder.setSmallIcon(R.drawable.ic_launcher); RemoteViews views=new RemoteViews(getPackageName(),R.layout.notify_item); views.setImageViewResource(R.id.iv, R.drawable.ic_launcher); views.setTextViewText(R.id.tv,"自定義視圖"); builder.setContent(views); manager.notify(3,builder.build()); } }); } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android 阿里云OSS文件上傳的實(shí)現(xiàn)示例
這篇文章主要介紹了Android 阿里云OSS文件上傳的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08Android數(shù)據(jù)流之Channel和Flow實(shí)現(xiàn)原理和技巧詳解
在 Android 應(yīng)用程序的開發(fā)中,處理異步數(shù)據(jù)流是一個常見的需求,為了更好地應(yīng)對這些需求,Kotlin 協(xié)程引入了 Channel 和 Flow,它們提供了強(qiáng)大的工具來處理數(shù)據(jù)流,本文將深入探討 Channel 和 Flow 的內(nèi)部實(shí)現(xiàn)原理、高級使用技巧以及如何在 Android 開發(fā)中充分利用它們2023-11-11android實(shí)現(xiàn)手機(jī)App實(shí)現(xiàn)拍照功能示例
本篇文章主要介紹了android實(shí)現(xiàn)手機(jī)App實(shí)現(xiàn)拍照功能示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02Android onActivityResult和setResult方法詳解及使用
這篇文章主要介紹了Android onActivityResult和setResult方法詳解及使用的相關(guān)資料,這里提供實(shí)例,幫助大家學(xué)習(xí)理解,需要的朋友可以參考下2016-12-12解決Android webview設(shè)置cookie和cookie丟失的問題
這篇文章主要介紹了解決Android webview設(shè)置cookie和cookie丟失的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03Android評分控件RatingBar使用實(shí)例解析
這篇文章主要為大家詳細(xì)介紹了Android評分控件RatingBar使用實(shí)例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-10-10Android JNI c/c++調(diào)用java的實(shí)例
這篇文章主要介紹了Android JNI c/c++調(diào)用java的實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-07-07