private void ShowDialog() { if (dialogIsShow) { return; } dialogIsShow = true; /*AlertDialog.Builder builderSingle = new AlertDialog.Builder(Context); * String title = null; * builderSingle.SetTitle(title); * * ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(Context, Resource.Layout.item_dialog); * if (objects == null) * return; * for (int i = 0; i < objects.Count(); i++) * arrayAdapter.Add(objects.ElementAt(i)); * * builderSingle.SetNegativeButton("Cancelar", (s, ev) => * { * ((AlertDialog)s).Cancel(); * }); * * builderSingle.SetAdapter(arrayAdapter, (o, e) => * { * String strName = arrayAdapter.GetItem(e.Which); * Text = strName; * selection = e.Which; * ItemChanged?.Invoke(this, e.Which); * }); * builderSingle.Show();*/ var activity = Locator.Current.GetService <Activity>() as AppCompatActivity; var fragment = ListEditTextDialogFragment.NewInstance(); fragment.OnSelected += (o, item) => { Text = item; var oldSelection = selection; selection = item; if (!selection.Equals(oldSelection)) { ItemChanged?.Invoke(this, item); } }; fragment.Show(activity.SupportFragmentManager, "listedittext"); fragment.SetObjects(objects); fragment.OnDismissEvent += (o, e) => dialogIsShow = false; }
public static ListEditTextDialogFragment NewInstance() { ListEditTextDialogFragment fr = new ListEditTextDialogFragment(); return(fr); }