Show fragment as a dialog or as a usual activity

2019-01-22 12:17发布

问题:

In my app I've got a fragment which is called "About". On handhelds I want this fragment to look like a usual activity but on tablets I want it to be a dialog. Which way is preferred to handle this situation?

回答1:

Make a style for this in your styles.xml (two styles.xml files, one in the values folder, the other in a values-large folder) but have the style you put in the values-large folder inherit from Theme.Dialog. Then have your fragment use that style. The system will take care of the rest.

Alternatively, make your class a DialogFragment, and then either embed it into a view hierarchy, or show it as a dialog, as explained here:

http://developer.android.com/reference/android/app/DialogFragment.html#DialogOrEmbed