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

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

 

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

01.png

 

2. override onCreate方法

在裡面給予callback的初始值

範例如下


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

02.png

 

3. 然後回到fragment去implement該interface

03.png

 

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

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

04.png

 

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

05.png  

arrow
arrow

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