删除标题时自定义对话框折叠

时间:2015-10-26 22:48:10

标签: c# android mobile dialog

我的应用程序应该在主活动中有一个按钮,按下时应显示一个自定义对话框,该对话框将用作用户的注册表单。问题是,当我删除自定义对话框窗口的标题栏水平折叠时。有关如何解决此问题的任何建议?使用片段作为注册的想法是一个好的吗? TIA

这是要说明的图像

Collapsed dialog box

以下是标题栏的内容

enter image description here

以下是主要活动的代码

protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);

        // Set our view from the "main" layout resource
        SetContentView(Resource.Layout.Main);

        mbtnfragment = FindViewById<Button>(Resource.Id.MyButton);

        mbtnfragment.Click += mbtnfragment_Click;



    }

    void mbtnfragment_Click(object sender, EventArgs e)
    {
        FragmentTransaction transaction = FragmentManager.BeginTransaction();
        create_dialog dialog = new create_dialog();
        dialog.Show(transaction, "Fragment Dialog");
        Console.WriteLine("Fragment created");
    }

create_dialog类的代码

    class create_dialog: DialogFragment
{
    public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstancesState)
    {
        base.OnCreateView(inflater, container, savedInstancesState);
        var view = inflater.Inflate(Resource.Layout.fragment_dialog, container, false);
        return view;
    }

    public override void OnActivityCreated(Bundle savedInstanceState)
    {
        Dialog.Window.RequestFeature(WindowFeatures.NoTitle);
        base.OnActivityCreated(savedInstanceState);
    }
}

}

2 个答案:

答案 0 :(得分:2)

将fragment_dialog布局的宽度从wrap_content更改为match_parent或定义的大小

答案 1 :(得分:1)

您可以为自定义对话框设置没有标题的样式

@Override
public void onCreateDialog(Bundle savedInstanceState) {
    setStyle(STYLE_NO_TITLE, 0);
}

或者您可以在第二个参数中设置主题,如Theme.AppCompat.Dialog ...