Search code examples
xamarinsizeandroid-dialogfragment

How to set DialogFragment size in Xamarin?


I'am trying to set size of custom DialogFragment. I was trying something like this:

class ChannelEdit : DialogFragment
{
    public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
    {
        base.OnCreateView(inflater, container, savedInstanceState);
        var view = inflater.Inflate(Resource.Layout.ChannelEdit, container, false);
        DisplayMetrics dm = new DisplayMetrics();
        this.Dialog.Window.WindowManager.DefaultDisplay.GetMetrics(dm);
        int width = dm.WidthPixels;
        int height = dm.HeightPixels;
        this.Dialog.Window.SetLayout((int)width / 2, (int)height / 2);   
        return view;
    }
}

But Its not working. I'am not receiving any errors. Could You help me with this?


Solution

  • Set Layout parameters for root element :

    int width = this.Resources.DisplayMetrics.WidthPixels;
    int height = this.Resources.DisplayMetrics.HeightPixels
    rootLayout.setLayoutParams (new LinearLayout.LayoutParams (width, height));