0

我可以通知通過設置的PendingIntent和使用setLastestEventInfo()調用的活動。如果我想打電話給一個特定的片段,那可能嗎?我可以覆蓋的任何方法嗎?據我所知,片段不直接與意圖一起工作,但需要由活動主持。安卓通知調用片段

+0

不,你不能。如果片段沒有實例化呢?而是將其發送到託管活動,並將其發送到片段,或者在必要時創建它。 – 323go

回答

2

您可以傳遞片段的全部類名稱(MyFragment.class.getName())作爲額外的意圖。然後,有一個託管活動,收到意圖,並顯示片段作爲額外給出,如下所示:

public static final String FRAGMENT_CLASS = "fragment_class"; 

public void onCreate(Bundle savedState) { 
    Intent i = getIntent(); 
    String fragmentClass = i.getStringExtra(FRAGMENT_CLASS); 
    if (!TextUtils.isEmpty(fragmentClass)) { 
     Fragment toDisplay = Fragment.instantiate(this, fragmentClass); 
     getSupportFragmentManager() 
       .beginTransaction() 
       .add(R.id.my_root_container, toDisplay, null) 
       .commit(); 
    } 
} 
+0

謝謝你,我想過,但希望可能是一個解決方案,直接處理片段。哦,好吧... –

+0

片段不是獨立的,它們被設計爲附加到活動。 – kcoppock