Вы должны LayoutInflater layoutinflater = LayoutInflater.From(Activity);
и Android.Support.V7.App.AlertDialog.Builder ProjectNameDialog = new Android.Support.V7.App.AlertDialog.Builder(Activity);
Это мой фрагмент кода (не забудьте добавить ProjectNameDialog.Show();
всплывающее окно AlertDialog)
public class Fragment1 : Fragment
{
public override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
// Create your fragment here
}
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View view = inflater.Inflate(Resource.Layout.activity_main, container, false);
ImageButton btnAddProject = view.FindViewById<ImageButton>(Resource.Id.btnAddProject);
btnAddProject.Click += delegate
{
LayoutInflater layoutinflater = LayoutInflater.From(Activity);
View DialogView = layoutinflater.Inflate(Resource.Layout.setup_project_name_dialog, null);
Android.Support.V7.App.AlertDialog.Builder ProjectNameDialog = new Android.Support.V7.App.AlertDialog.Builder(Activity);
ProjectNameDialog.SetView(DialogView);
EditText editProjectName = DialogView.FindViewById<EditText>(Resource.Id.et_name);
ProjectNameDialog.SetCancelable(false);
ProjectNameDialog.SetPositiveButton("Continue", delegate
{
//My own code here
});
ProjectNameDialog.Show();
};
return view;
}
}
Есть MainActivity.cs
[Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher = true)]
public class MainActivity : AppCompatActivity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.main);
var Fragment1 = new Fragment1();
FragmentManager.BeginTransaction()
.Add(Android.Resource.Id.Content, Fragment1)
.Commit();
}
}
Работает GIF