El siguiente código Mono for Android C# hace el truco (pero debería ser fácil de portar a Java). Probé en Android 2.2 (Galaxy S) y Android 4.1 (Nexus 7). Lo único que tendría que cambiar son los ID de disposición utilizados para la vista principal y la vista de diálogo.
[Activity (MainLauncher = true)]
public class TestCustomDialogActivity : FragmentActivity
{
public class MyDialogFragment : Android.Support.V4.App.DialogFragment
{
public override Android.Views.View OnCreateView(Android.Views.LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
// Android 3.x+ still wants to show title: disable
Dialog.Window.RequestFeature(WindowFeatures.NoTitle);
// CHANGE TO YOUR DIALOG LAYOUT or VIEW CREATION CODE
return inflater.Inflate(Resource.Layout.MyLayout, container, true);
}
public override void OnResume()
{
// Auto size the dialog based on it's contents
Dialog.Window.SetLayout(LinearLayout.LayoutParams.WrapContent, LinearLayout.LayoutParams.WrapContent);
// Make sure there is no background behind our view
Dialog.Window.SetBackgroundDrawable(new ColorDrawable(Color.Transparent));
// Disable standard dialog styling/frame/theme: our custom view should create full UI
SetStyle(Android.Support.V4.App.DialogFragment.StyleNoFrame, Android.Resource.Style.Theme);
base.OnResume();
}
}
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// CHANGE TO YOUR MAIN SCREEN
SetContentView(Resource.Layout.MyDialog);
var dialog = new MyDialogFragment();
dialog.Show(SupportFragmentManager, "dialog");
}
}
he subido a Mono completo para Android muestra a https://github.com/t9mike/CustomDialogFragmentSample. a continuación
Gracias. Una vez convertido a Java, este me fue el truco. Tuve que cambiar WRAP_CONTENT por MATCH_PARENT para que el cuadro de diálogo se muestre a pantalla completa. – speedynomads
Gracias por subir Github – Signcodeindie