2015-11-19 62 views
0

我正在使用通知構建器來通知設備上的通知。而這一切都工作得很好。我已經實施了待定意圖。當用戶點擊通知時,用戶將參與該活動。另外,當用戶點擊通知時,通知會通過將auto cancelable屬性設置爲true來消失。如何對通過xml在通知中添加的按鈕執行自定義操作

讓我告訴你的方式,我開始並通知通知

mNotifyManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 
mBuilder = new NotificationCompat.Builder(DownloadService.this) 
          .setSmallIcon(R.drawable.download) 
          .setContentTitle("MyApps") 
          .setContentText("Downloading new tracks"); 
      mBuilder.setAutoCancel(true); 


      Intent targetIntent = new Intent(DownloadService.this,TrackClass.class); 
      PendingIntent contentIntent = PendingIntent.getActivity(DownloadService.this, 0, targetIntent, PendingIntent.FLAG_UPDATE_CURRENT); 

      mBuilder.setContentIntent(contentIntent); 

      mNotifyManager.notify(1, mBuilder.build()); 

所以,這一切工作正常,我也是顯示進度和更新通知進度。

我想要什麼: 這就是爲什麼我張貼的問題,

「我要與通知一起添加按鈕,這樣,當按鈕 用戶點擊它應該關閉服務。我已經 執行通知上的點擊動作,但我不知道 如何將它添加按鈕」

請告訴我,我怎樣才能做到這一點?

注:請記住我正在和 服務更新通知。

我想現在我很清楚我想要什麼,我的問題是什麼。 那麼請告訴我如何在此通知中添加按鈕?

編輯了1:

我想,如果我實施通知的自定義XML,那麼其他屬性,如顯示在通知和通知的小股票消息我的應用程序的名字,將他們仍然能夠顯示在通知方面,還是我必須明確地顯示它們?

+0

試試這個答案http://stackoverflow.com/questions/16168553/create-custom-notification- android – mubeen

+0

@mubeen我在 –

回答

0

,你必須創建自己的自定義視圖 這裏所有需要的信息http://developer.android.com/guide/topics/ui/notifiers/notifications.html#Updating

public void createNotification(View view) { 
// Prepare intent which is triggered if the 
// notification is selected 
Intent intent = new Intent(this, NotificationReceiverActivity.class); 
PendingIntent pIntent = PendingIntent.getActivity(this, (int) System.currentTimeMillis(), intent, 0); 

// Build notification 
// Actions are just fake 
Notification noti = new Notification.Builder(this) 
    .setContentTitle("New mail from " + "[email protected]") 
    .setContentText("Subject").setSmallIcon(R.drawable.icon) 
    .setContentIntent(pIntent) 
    .addAction(R.drawable.icon, "Call", pIntent) 
    .addAction(R.drawable.icon, "More", pIntent) 
    .addAction(R.drawable.icon, "And more", pIntent).build(); 
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); 
// hide the notification after its selected 
noti.flags |= Notification.FLAG_AUTO_CANCEL; 

notificationManager.notify(0, noti); 

}

+0

之前看過這個鏈接請閱讀我已更新的部分問題 –

+0

好的,我將與您分享我的代碼,但從edit secion中可以理解,如果您使用自定義,則無法顯示應用名稱佈局 – AbuQauod

+0

你的意思是我們必須要我所有這一切都在xml中實現嗎? –

相關問題