中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android中如何利用Notification實現在狀態欄上顯示通知

發布時間:2022-04-08 16:03:34 來源:億速云 閱讀:255 作者:iii 欄目:編程語言

本篇內容主要講解“Android中如何利用Notification實現在狀態欄上顯示通知”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Android中如何利用Notification實現在狀態欄上顯示通知”吧!

(1)調用getSystemService()方法獲取系統的NotificationManager服務。
(2)創建一個Notification對象,并為其設置各種屬性
(3)為Notification對象設置事件信息
(4)通過NotificationManager類的notify()方法發送Notification通知

下面通過一個具體的實例說明如何使用Notification在狀態欄上顯示通知:
res/layout/main.xml:

<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  android:orientation="vertical"  
  android:layout_width="fill_parent"  
  android:layout_height="fill_parent"  
  android:id="@+id/layout1" 
  android:gravity="center_horizontal" 
  >  
  <Button android:id="@+id/button1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="顯示通知"/> 
  <Button android:id="@+id/button2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="刪除通知"/> 
</LinearLayout>

這個是點擊通知跳轉的頁面main2.xml:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" > 

<TextView android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="這里是詳細內容"/> 
</LinearLayout>

在中AndroidManifest.xml添加一下兩個權限,并在<application>標簽中注冊ContentActivity:

<!-- 添加操作閃光燈的權限 --> 
  <uses-permission android:name="android.permission.FLASHLIGHT"/> 
<!-- 添加操作震動器的權限 --> 
  <uses-permission android:name="android.permission.VIBRATE"/> 
<application> 
<activity android:name=".ContentActivity"/> 
</application>

MainActivity:

package com.example.test;  
  
import android.app.Activity; 
import android.app.Notification; 
import android.app.NotificationManager; 
import android.app.PendingIntent; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
  
public class MainActivity extends Activity {  
   public static int NOTIFYID_1=1,NOTIFYID_2=2; 
  @Override  
  public void onCreate(Bundle savedInstanceState) {  
    super.onCreate(savedInstanceState);  
    setContentView(R.layout.main);  
      
    //獲取通知管理器,用于發送通知 
    final NotificationManager notificationManager=(NotificationManager)getSystemService(NOTIFICATION_SERVICE); 
     
    Button button1=(Button) findViewById(R.id.button1);//獲取"顯示通知"按鈕 
    //為"顯示通知"按鈕添加單擊事件監聽器 
    button1.setOnClickListener(new OnClickListener() { 
       
      @Override 
      public void onClick(View arg0) { 
        Notification notify=new Notification();//創建一個Notification對象 
        notify.icon=R.drawable.in; 
        notify.tickerText="顯示第一個通知"; 
        notify.when=System.currentTimeMillis();//設置發送時間(設置為當前時間) 
        notify.defaults=Notification.DEFAULT_ALL;//設置默認聲音、默認震動和默認閃光燈 
        notify.setLatestEventInfo(MainActivity.this, "無題", "每天進步一點點", null);//設置事件信息 
        notificationManager.notify(NOTIFYID_1,notify);//通過通知管理器發送通知 
         
        //添加第二個通知 
        Notification notify1=new Notification(R.drawable.music,"顯示第二個通知",System.currentTimeMillis()); 
        notify1.flags=Notification.FLAG_AUTO_CANCEL;//打開應用程序后圖標消失 
        Intent intent=new Intent(MainActivity.this,ContentActivity.class);//設置為跳轉頁面準備的Intent 
        //針對意圖的包裝對象,在下面就是通知被點擊時激活的組件對象(上下文,請求碼,意圖對象,標識符) 
        PendingIntent pendingIntent=PendingIntent.getActivity(MainActivity.this, 0, intent, 0); 
        //設置通知的內容  (上下文對象,標題, 內容, 指定通知被點擊的時候跳轉到哪里,激活哪個組件) 
        notify1.setLatestEventInfo(MainActivity.this, "通知", "查看詳細內容", pendingIntent); 
        notificationManager.notify(NOTIFYID_2,notify);//通過通知管理器發送通知 
      } 
    }); 
     
    Button button2=(Button) findViewById(R.id.button2);//獲取"刪除通知"按鈕 
    //為"顯示通知"按鈕添加單擊事件監聽器 
    button2.setOnClickListener(new OnClickListener() { 
 
 
      @Override 
      public void onClick(View arg0) { 
        notificationManager.cancel(NOTIFYID_1);//清除ID號為常量NOTIFYID_1的通知 
        notificationManager.cancelAll();//清除全部通知 
      }   
    }); 
  }  
}

到此,相信大家對“Android中如何利用Notification實現在狀態欄上顯示通知”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

进贤县| 抚远县| 安远县| 霸州市| 茌平县| 乌鲁木齐市| 绥化市| 化德县| 青河县| 保德县| 三原县| 布拖县| 盘锦市| 宜州市| 温宿县| 扶余县| 潞西市| 华池县| 额尔古纳市| 大理市| 治多县| 盐城市| 宝山区| 历史| 临泉县| 施秉县| 辽中县| 平安县| 黄龙县| 筠连县| 滦南县| 秦安县| 衡阳县| 丹江口市| 鹤峰县| 维西| 新宁县| 卓尼县| 长春市| 射洪县| 富蕴县|