2016-08-02 2 views
-1

조각에 알림 관리자가 있습니다. 클릭 할 때까지 제대로 작동합니다. 클릭 할 때마다 Fragment_02 클래스를 열 수 있습니다. 그것은 홈 화면, 다른 조각이나 활동)에서조각을 android.app로 전송할 수 없습니다. 알림 클릭시 활성화

아래

코드 :

  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는

로그 캣 안드로이드 앱 활동 캐스트 할 수없는

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) 
+0

질문이 업데이트되면 LogCat이 완료됩니다. – Sufian

+0

[조각을 android.app.activity로 전송할 수 없습니다.] (http://stackoverflow.com/questions/22705146/fragment-cannot-be-cast-to-an-android-app-activity) – Sufian

답변

0

조각입니다. 그것은 당신을 도울 것입니다

FragmentManager fragmentManager = getFragmentManager(); 
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); 
Fragment_02 fragment = new Fragment_02(); 
fragmentTransaction.add(R.id.fragment_container, fragment); 
fragmentTransaction.commit(); 

: 당신이

를 쓴 그래서 당신은에 시도를 열 수 없습니다.

0

에는 addParentStack이 조각을 포함하지 않는 3 가지 매개 변수를 취할 수 있다고 나와 있습니다. 제 제안은 활동 클래스가있는 addParentStack을 호출하고 활동에서 조각을 시작하는 것입니다.

관련 문제