android DialogFragment 回調到 Fragment


google 從3.0開始就引入了 Fragment 概念,用 Fragment 取代多 Activity,假設你還停留在 Activity 時代,那你就面壁去吧!


Fragment 是好用,可是又幾個問題,

1.在 ViewPager 里面,你不知道 Fragment 當前是顯示還是隱藏狀態,就是少了一個 onShow onHide 回調

2.就是本客題,顯示一個 DialogFragment 回調問題,


舉個場景,刪除一個文件。用 DialogFragment 彈出用戶選擇,你怎么知道用戶確定了還是取消了,而且你不知道這個 DialogFragment 何時消失了,由於沒有觸發不論什么UI 事件,你就不知道要刷新列表,

然而,我知道,僅僅要我有問題,上 stackoverflow 這里一定能夠搜到答案


http://stackoverflow.com/questions/13733304/callback-to-a-fragment-from-a-dialogfragment


這問題就是了


原理:

Fragment 有

@Override
    public void onActivityResult(int requestCode, int resultCode, Intent data)

回調,當你在 Fragment 里調用  getParentFragment().onActivityResult()  就能夠收到回調,細致想想。這事實上就一個函數調用,沒經過系統處理,。。


stackoverflow 上講的這個樣例更合理,使用


dialogFrag.setTargetFragment(this, DIALOG_FRAGMENT);
getTargetFragment().onActivityResult(getTargetRequestCode(), Activity.RESULT_OK, getActivity().getIntent());

組合。更加合理


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM