2016-06-11 38 views
-2

與按鈕片段按下該按鈕後,應打開AlertDialog其與圖像兩個按鈕,每個按鈕(按鈕上沒有文本)一個圖像。一個對話框按鈕,打開畫廊挑選照片並傳回片段其他打開相機拍照,並把它傳遞給同一個片段。因此,我應該使用DialogFragment,或者我可以創建AlertDialog在那片段它會好嗎?我只是不明白什麼時候需要使用DialogFragments做的時候,我需要使用dialogfragments

+1

這是一樣的問:'我需要碎片或將活動工作對我來說' –

+0

所以它是效率 – kosas

+1

而對於連貫性,以及(這是非常讚賞)由於您使用的片段在你的應用程序,爲什麼不繼續呢??。那條車道? –

回答

3

「DialogFragment做了各種事情來保持片段的生命週期來驅動它,而不是對話框。注意對話框通常是自治實體 - 它們是它們自己的窗口,接收他們自己的輸入事件,並經常決定自己何時消失(通過接收後退鍵事件或用戶單擊按鈕)。「

來源:對話片段| Android開發者

「這很簡單。

DialogFragment是一個片段。那麼,什麼可以在片段提供給您,而其他對象不能?

它的生命週期回調。

因此,與DialogFragment,它可以是非常強大的,讓你的代碼乾淨多了。

你見過窗口泄漏,如果你不關閉對話框時,其活性被破壞掉了?因此,爲了防止這種情況,你有沒有試過在onPause()被調用時關閉對話框?所以要做到這一點,你有沒有必要將該對話框引用到類級別的對象?

隨着DialogFragment,這一切都處理。 並且您獲得所有生命週期回調。 然後你可以在對話框中提供更智能,使它做一些聰明的工作,對自己,而不是活動,告訴它做什麼「

來源:KoreanDude | StackOverflow上

相關問題