91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

Android Notification 使用方法詳解

發布時間:2020-08-23 22:37:13 來源:腳本之家 閱讀:280 作者:lqh 欄目:移動開發

Android Notification 使用方法詳解

用TaskStackBuilder來獲取PendingIntent處理點擊跳轉到別的Activity,首先是用一般的PendingIntent來進行跳轉。

mBuilder = new NotificationCompat.Builder(this).setContent(view) 
    .setSmallIcon(R.drawable.icon).setTicker("新資訊") 
    .setWhen(System.currentTimeMillis()) 
    .setOngoing(false) 
    .setAutoCancel(true); 
Intent intent = new Intent(this, NotificationShow.class); 
 PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, 
 intent, PendingIntent.FLAG_UPDATE_CURRENT); 
mBuilder.setContentIntent(pendingIntent); 

直接用PendingIntent來跳轉到NotificationShow,在運行效果上來看,首先發送了一條Notification到通知欄上,然后這時,我退出程序,即MainActivity已經不存在了,回到home主菜單,看到Notification仍然存在,當然,我們還沒有點擊或者cancel它,現在去點擊Notification,跳轉到NotificationShow界面,然后我們按下Back鍵,發現直接回到主界面了。現在大多數android應用都是在通知欄中如果有Notification通知的話,點擊它,然后會直接跳轉到對應的應用程序的某個界面,這時如果回退,即按下Back鍵,會返回到該應用程序的主界面,而不是系統的主界面。所以用上面這種PendingIntent的做法達不到目的。這里我們使用TaskStackBuilder來做。

mBuilder = new NotificationCompat.Builder(this).setContent(view) 
        .setSmallIcon(R.drawable.icon).setTicker("新資訊") 
        .setWhen(System.currentTimeMillis()) 
        .setOngoing(false) 
        .setAutoCancel(true); 
    Intent intent = new Intent(this, NotificationShow.class); 
    TaskStackBuilder stackBuilder = TaskStackBuilder.create(this); 
    stackBuilder.addParentStack(NotificationShow.class); 
    stackBuilder.addNextIntent(intent); 
    PendingIntent pendingIntent = stackBuilder.getPendingIntent(0, 
        PendingIntent.FLAG_UPDATE_CURRENT); 
//    PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, 
//    intent, PendingIntent.FLAG_UPDATE_CURRENT); 
    mBuilder.setContentIntent(pendingIntent); 

        顯示用TaskStackBuilder.create(this)一個stackBuilder實例,接下來addParentStack();關于這個方法,我們查一下官方API文檔:Add the activity parent chain as specified by the parentActivityName attribute of the activity (or activity-alias) element in the application's manifest to the task stack builder. 這句話是說添加一個activity,與這個activity的manifest文件中的parentActivityName的屬性相關聯。

那么我們就在manifest文件中添加這個屬性

<activity 
  android:name="com.shulf.notificationtest.NotificationShow" 
  android:parentActivityName=".MainActivity" > 
</activity> 

讓它的parentActivity為MainActivity,也就是說在NotificationShow這個界面點擊回退時,會跳轉到MainActivity這個界面,而不是像上面一樣直接回到了程序的主菜單。運行一下,最后效果確實是這樣。

以上實用Android Notification的實例詳解,如有疑問請留言或者到本站社區交流討論,本站關于Android開發的文章還有很多,希望大家搜出查閱,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

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

AI

芦山县| 衡阳市| 东乌珠穆沁旗| 万全县| 扎赉特旗| 济宁市| 洪湖市| 沈丘县| 长泰县| 财经| 沅江市| 平顺县| 通山县| 乌海市| 绥阳县| 乌兰察布市| 新龙县| 兴海县| 苗栗县| 房山区| 南郑县| 苏尼特左旗| 湘潭市| 茌平县| 建德市| 双江| 屯门区| 宜良县| 韩城市| 永登县| 麻阳| 洛南县| 河南省| 大港区| 晋宁县| 鸡西市| 革吉县| 穆棱市| 邵东县| 略阳县| 论坛|