Android学习(二十)Notification通知栏
生活随笔
收集整理的這篇文章主要介紹了
Android学习(二十)Notification通知栏
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、通知欄的內(nèi)容
1、圖標(biāo)
2、標(biāo)題
3、內(nèi)容
4、時間
5、點擊后的相應(yīng)
?
二、如何實現(xiàn)通知欄
1、獲取NotificationManager。
2、顯示通知欄:notify(id,notification);
3、取消通知欄:cancle(id);
4、構(gòu)造Notification并設(shè)置顯示內(nèi)容;
5、通知欄通知可以設(shè)置聲音提示,指示燈,以及震動效果。
?
三、示例代碼:發(fā)送通知和取消通知
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context=".MainActivity"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="通知欄的使用" /><Buttonandroid:id="@+id/btn_send"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="發(fā)送通知"/><Buttonandroid:id="@+id/btn_cancel"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="取消通知"/> </LinearLayout>?
添加權(quán)限:
<!--指示燈的權(quán)限--><uses-permission android:name="android.permission.FLASHLIGHT" /><!--震動的權(quán)限--><uses-permission android:name="android.permission.VIBRATE" />?
后臺代碼:
package com.example.zhengcheng.myapplication;import android.app.Activity; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.app.Notification;public class MainActivity extends Activity {Button btn_send; //發(fā)送按鈕Button btn_cancel; //取消按鈕NotificationManager manager; //通知控制類int notificationID;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//通過系統(tǒng)服務(wù)來創(chuàng)建NotificationManagermanager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);btn_send = (Button) findViewById(R.id.btn_send);btn_send.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {sendNotication();}});btn_cancel = (Button) findViewById(R.id.btn_cancel);btn_cancel.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {manager.cancel(notificationID);}});}/*** 發(fā)送通知信息*/private void sendNotication() {Intent intent = new Intent(this, MainActivity.class);PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 0);Notification.Builder builder = new Notification.Builder(this);builder.setSmallIcon(R.mipmap.ic_launcher); //設(shè)置圖標(biāo)builder.setTicker("手機狀態(tài)欄提示"); //手機狀態(tài)欄提示builder.setWhen(System.currentTimeMillis()); //設(shè)置時間builder.setContentTitle("通知欄標(biāo)題"); //設(shè)置標(biāo)題欄builder.setContentText("我來自NotificationDemo"); //設(shè)置通知欄內(nèi)容builder.setContentIntent(pendingIntent); //設(shè)置點擊通知欄時彈出哪一個Activity// builder.setDefaults(Notification.DEFAULT_SOUND); //設(shè)置提示聲音 // builder.setDefaults(Notification.DEFAULT_LIGHTS); //設(shè)置指示燈 // builder.setDefaults(Notification.DEFAULT_VIBRATE); //設(shè)置震動 builder.setDefaults(Notification.DEFAULT_ALL); //設(shè)置上面所有的效果Notification notification = builder.build(); //Android4.1以上的版本, // Notification notification = builder.getNotification(); //如果4.1以下的版本使用 builder.getNotification(); manager.notify(notificationID, notification);}}?
轉(zhuǎn)載于:https://www.cnblogs.com/zhengcheng/p/4437183.html
總結(jié)
以上是生活随笔為你收集整理的Android学习(二十)Notification通知栏的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [独家]网易遭遇****** 留下“装B
- 下一篇: iOS 动画绘制线条颜色渐变的折线图