基本上,對話框將使後臺的活動無效。所以DialogFragment
也增加了複雜性。那麼爲什麼要去DialogFragment
,儘管Dialog
的各個子類都可用。爲什麼要使用DialogFragment?
11
A
回答
6
Fragments
使用FragmentTransaction
使用與您的活動,而是提出一個片段對話框(窗口),並與片段的生命週期隨動,你需要使用DialogFragment
。但是,您也可以使用簡單的Dialog
,但與片段的生命週期無關。
作爲每谷歌文檔:
甲DialogFragment仍可任選地使用作爲一個正常的片段,如果需要的話 。如果你有一個片段,在某些情況下 應該被顯示爲一個對話框,而其他的則被嵌入到一個更大的UI中。
2
DialogFragment允許在應用程序中重複使用部分對話框。就像片段爲你的佈局做的一樣。
在這裏,您有關於DialogFragment好文章: http://android-developers.blogspot.fr/2012/05/using-dialogfragments.html
1
當u使用片段已經在你的Android應用動態佈局,然後u需要在對話框中使用/使用它從一個操作按鈕,點擊或其他點擊,所以這個時候dialogFragment更方便,則正常對話。
1
FragmentDialog是,其可以是片段:
用作片段,例如:
FragmentTransaction trans = getSupportFragmentManager().beginTransaction(); trans.add(R.id.navigation_fragment, mFriendFragment); trans.commit();
用作對話框,例如:
FragmentManager fm = getFragmentManager(); UnsubscribeTabletFragment fragment = new UnsubscribeTabletFragment(); fragment.show(fm, "dialog");
所以,如果你有一個片段,而片段有一些時間作爲片段,有時作爲對話框工作,那麼你應該使用這個。
相關問題
- 1. ListFragment,DialogFragment - 爲什麼?
- 2. 爲什麼要使用Windows.Forms.Timer?
- 3. 爲什麼要使用Mockito?
- 4. 爲什麼要使用Django?
- 5. 爲什麼要使用DataTemplate.DataType
- 6. 爲什麼要使用PortletURL?
- 7. 爲什麼要使用Querydsl?
- 8. 爲什麼要使用CAssetManager?
- 9. 爲什麼要使用Socket.io?
- 10. 爲什麼要使用ActionbarSherlock?
- 11. 爲什麼要使用CC_BREAK_IF?
- 12. 爲什麼要使用File.join()?
- 13. 爲什麼要使用fluentmigrator?
- 14. 爲什麼要使用Asprintf?
- 15. 爲什麼要使用restartLoader()?
- 16. 爲什麼要使用Dispatcher.BeginInvoke?
- 17. 爲什麼要使用jsp:forward
- 18. 爲什麼要使用Uploadify?
- 19. 爲什麼要使用Hashtable.Synchronized?
- 20. 爲什麼要使用scala.collection.immutable.Stack
- 21. 爲什麼要使用addscalar?
- 22. 爲什麼我需要Iterator接口,爲什麼要使用它?
- 23. 爲什麼要使用-T使用ssh
- 24. 爲什麼要使用websocket,使用它有什麼好處?
- 25. C++爲什麼要使用引用?
- 26. 爲什麼要使用應用型
- 27. 爲什麼要使用「應用」?
- 28. 爲什麼要爲
- 29. 爲什麼要在Android中使用strings.xml?
- 30. 爲什麼我們要使用HttpContext.Current?