2013-05-05 68 views
0

我試圖創建一個通知。NotificationCompat .AddAction不支持String參數

這是我的示例代碼:

NotificationCompat.Builder mBuilder = 
      new NotificationCompat.Builder(this) 
      .setSmallIcon(R.drawable.icon) 
      .setContentTitle("My notification") 
      .addAction(android.R.drawable.ic_menu_camera, getResources().getString(R.string.Action), NotificationReceiverActivity.class) 
      .setContentText("Hello World!"); 

但是Eclipse告訴我,該方法addAction是不適用於此參數:

方法的addAction(INT,CharSequence中,的PendingIntent)類型NotificationCompat.Builder不適用於參數(int,String,Class)

問題是什麼?

這是的minSdkVersion 16和targetSdkVersion是17

回答

1

的第三個參數addAction()需要是PendingIntent,但你傳遞一個類。做這樣的事情:

Intent intent = new Intent(this, NotificationReceiverActivity.class); 
PendingIntent pi = PendingIntent.getActivity(this, 0, intent, 0); 
NotificationCompat.Builder mBuilder = 
     new NotificationCompat.Builder(this) 
     .setSmallIcon(R.drawable.icon) 
     .setContentTitle("My notification") 
     .addAction(android.R.drawable.ic_menu_camera, getResources().getString(R.string.Action), pi) 
     .setContentText("Hello World!"); 

看看使用通知製造商和/或使用PendingIntent如果您需要更多幫助的其他例子。