2015-09-30 98 views
0

我有一個活動,其中包含一個按鈕,它會在點擊時啓動一個片段。但是我需要在啓動片段時完成當前活動。如何可能?我在啓動Fragment後嘗試調用finish(),但它不是加工。如何在開始片段之前完成一項活動?

android.app.FragmentManager fm = getFragmentManager(); 
DetailFragment dialog_fragment = new DetailFragment("Events",name,id); 
dialog_fragment.show(fm, "detailScreen"); 
finish(); 
+0

你試過這個代碼的地方? –

+0

在我的按鈕內點擊事件 – Jas

+1

爲什麼不在'Fragment'之前調用'finish();'? –

回答

1

撥打電話getActivity().finish();從您的片段完成您的活動。

但是,要小心。有時getActivity()可能是null。在這種情況下,請不要撥打finish()。該活動已被破壞。

+0

我的活動是一個對話框。在對話框的按鈕上單擊,我想要啓動新的片段並關閉對話框。這是我的場景。這是可能的嗎? – Jas

0

use dialog.dismiss();打開一個片段後。