這篇介紹如何在fragment上用DialogFragment的callback

有fragment, callback, dialogfragment的觀念在看會比較清楚

 

1. 首先先創好Fragment和Dialogfragment並設定好其callback的interface

 

2. override onCreate方法

在裡面給予callback的初始值

範例如下


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        try {
            mListener = (Listener) getTargetFragment();
        } catch (ClassCastException e) {
            e.printStackTrace();
        }
    }

 

3. 然後回到fragment去implement該interface

 

4. 最後在show該Dialog的前面設定目標Fragment就好了

        TestDialog dialog = new TestDialog();
        dialog.setTargetFragment(this, 0);
        dialog.show(getFragmentManager(), "dialog");

 

5. 執行後按下按鈕就會有callback效果了

 

文章標籤
全站熱搜
創作者介紹
創作者 RX1226 的頭像
RX1226

給你魚竿

RX1226 發表在 痞客邦 留言(0) 人氣(1,324)