作爲參數傳遞活動所以這裏是交易。無法通過方法
我創建了一個用戶定義的類。它包含一個返回通知對象的方法。現在我想讓這個方法有點靈活。就像傳遞用戶在通知欄中單擊通知時打開的活動一樣。這裏的方法
public Notification getUserNotificationObject(String status, String message, String tickerText, boolean isOngoingEvent){
Notification notification = new Notification(R.drawable.image, tickerText, System.currentTimeMillis());
long vibInterval = (long) context.getResources().getInteger(R.integer.vibrateInterval);
notification.vibrate = new long[] {vibInterval, vibInterval, vibInterval, vibInterval, vibInterval};
Intent notifyIntent = new Intent(context, HomeScreen.class);
CharSequence contentTitle = "Title";
CharSequence contentText = status + "-" + message;
notification.setLatestEventInfo(context, contentTitle, contentText, PendingIntent.getActivity(context, 0, notifyIntent, PendingIntent.FLAG_CANCEL_CURRENT));
notification.ledARGB = Color.argb(100, 0, 254, 0);
notification.ledOnMS = 500;
notification.ledOffMS = 500;
notification.flags |= Notification.FLAG_SHOW_LIGHTS;
if(isOngoingEvent){
notification.flags |= Notification.FLAG_ONGOING_EVENT;
}
return notification;
}
我希望能夠通過活動作爲參數,在此,而不是
HomeScreen.class
上述意圖定義使用(這一類的用戶提供額外的控制(或其他開發人員)選擇在單擊通知時打開哪個活動)。我試着用活動作爲此方法的參數之一,但每當我試圖通過同時調用此方法,如「活性2」或「Activity2.this」另一個活動它給了我錯誤說:
No enclosing instance of the type Activity2 is accessible in scope
有什麼解決此問題或以任何方式將活動作爲參數傳遞。或者我應該區分那些基於NotificationID的。
在這方面的任何幫助或上述代碼的任何更正是值得歡迎的。 (「context」是一個類級別的變量,所以不用擔心,這段代碼工作正常)。
我也和班級一起嘗試過,而且我也有同樣的感覺。但意圖是一個好主意。感謝Greg。答案接受:D – drulabs