2014-02-26 43 views
0

我有一個MainActivity,導航抽屜更改了一些片段。 我想準備一些自定義對話框,並希望通過我的自定義類(無論是活動還是片段類)打開它們。沒有爲MainActivity或Fragment中的每個自定義對話框實現方法,是否可以這樣做?Android應用程序自定義對話框體系結構

回答

2

我不確定我是否理解100%是什麼問題,但如果它有很多對話框,您不想在活動中使用許多不同的方法設置對話框,請讓對話框繼承新類MyDialogFragment用靜態方法newInstance,然後傳遞你想要實例化的特定對話類作爲參數。

所以

public class MyDialogFragment extends DialogFragment { 
    ... 
    public static DialogFragment newInstance() { 
     // Overwrite this method in your dialogs to do what you have to do 
    } 
} 

然後在您的活動:

private void instantiateDialog(Class<? extends MyDialogFragment dialogClass) { 
    MyDialogFragment dialog = c.newInstance(); 
    dialog.show(getFragmentManager(), c.getCanonicalName()); 
} 
+0

這很容易... – latata