我有一個通知管理器在一個片段,它工作正常,直到你點擊它,它是假設打開Fragment_02類,無論它被點擊(是它從主屏幕,另一個片段或活動)片段不能轉換爲通知android.app.activity點擊
下面代碼:
private void pushNotification(int Request_ContactIntTotal) {
NotificationManager NM = (NotificationManager) getActivity().getSystemService(Context.NOTIFICATION_SERVICE);
if (Request_ContactIntTotal == 0)
{
NM.cancelAll();
}
else
{
NotificationCompat.Builder builder = new NotificationCompat.Builder(getActivity());
builder.setSmallIcon(R.drawable.ic_launcher);
builder.setContentTitle("Message Notification");
uilder.setContentText(Request_ContactIntTotal + " unread messages");
Intent intent = new Intent(getActivity(),Fragment_02.class);
TaskStackBuilder stackBuilder = TaskStackBuilder.create(getActivity());
stackBuilder.addParentStack(Fragment_02.class);
stackBuilder.addNextIntent(intent);
PendingIntent pendingIntent = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
builder.setContentIntent(pendingIntent);
NM.notify(0,builder.build());
}
}
通知點擊給出錯誤:Fragment_02不能轉換到Android應用活動
的logcat:
08-01 21:04:49.499: E/AndroidRuntime(3596): FATAL EXCEPTION: main
08-01 21:04:49.499: E/AndroidRuntime(3596): Process: com.mypackage.myapp, PID: 3596
08-01 21:04:49.499: E/AndroidRuntime(3596): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.mypackage.myapp/com.mypackage.myapp.Fragment_02}: java.lang.ClassCastException: com.mypackage.myapp.Fragment_02 cannot be cast to android.app.Activity
08-01 21:04:49.499: E/AndroidRuntime(3596): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2209)
08-01 21:04:49.499: E/AndroidRuntime(3596): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
08-01 21:04:49.499: E/AndroidRuntime(3596): at android.app.ActivityThread.access$800(ActivityThread.java:144)
08-01 21:04:49.499: E/AndroidRuntime(3596): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
08-01 21:04:49.499: E/AndroidRuntime(3596): at android.os.Handler.dispatchMessage(Handler.java:102)
08-01 21:04:49.499: E/AndroidRuntime(3596): at android.os.Looper.loop(Looper.java:135)
08-01 21:04:49.499: E/AndroidRuntime(3596): at android.app.ActivityThread.main(ActivityThread.java:5221)
08-01 21:04:49.499: E/AndroidRuntime(3596): at java.lang.reflect.Method.invoke(Native Method)
08-01 21:04:49.499: E/AndroidRuntime(3596): at java.lang.reflect.Method.invoke(Method.java:372)
08-01 21:04:49.499: E/AndroidRuntime(3596): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
08-01 21:04:49.499: E/AndroidRuntime(3596): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
08-01 21:04:49.499: E/AndroidRuntime(3596): Caused by: java.lang.ClassCastException: com.mypackage.myapp.Fragment_02 cannot be cast to android.app.Activity
08-01 21:04:49.499: E/AndroidRuntime(3596): at android.app.Instrumentation.newActivity(Instrumentation.java:1065)
08-01 21:04:49.499: E/AndroidRuntime(3596): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2199)
更新您的問題將完成LogCat。 – Sufian
[Fragment無法轉換爲android.app.activity]的可能重複(http://stackoverflow.com/questions/22705146/fragment-cannot-be-cast-to-an-android-app-activity) – Sufian