private async void InitTodoView() { SetContentView(Resource.Layout.ActivityMainTodoList); // Set up items _itemAdapter = new TodoListAdapter( this, Resource.Layout.TodoItem, (await _clientManager.RefreshList()).Value ?? new List <TodoItem>(), _clientManager, _clientManager.GetItemsCollection()); ((ListView)FindViewById(Resource.Id.todoList)).Adapter = _itemAdapter; FindViewById(Resource.Id.refresh).Click += async delegate { await RefreshList(); }; FindViewById(Resource.Id.clear).Click += async delegate { var result = await _clientManager.ClearChecked(); if (result.IsSuccessful) { await RefreshList(); } else { Toast.MakeText(this, Resource.String.error_clearing_checked, ToastLength.Long).Show(); } }; FindViewById(Resource.Id.logout).Click += async delegate { await _clientManager.StitchClient.Logout(); SetContentView(Resource.Layout.ActivityMain); }; FindViewById(Resource.Id.addItem).Click += delegate { var diagBuilder = new AlertDialog.Builder(this); LayoutInflater inflater = this.LayoutInflater; View view = inflater.Inflate(Resource.Layout.AddItem, null); EditText text = (EditText)view.FindViewById(Resource.Id.addItemText); diagBuilder.SetView(view); diagBuilder.SetPositiveButton(Resource.String.addOk, async delegate(object sender, DialogClickEventArgs e) { await _clientManager.AddItem(text.Text); await RefreshList(); }); diagBuilder.SetNegativeButton(Resource.String.addCancel, (sender, e) => { ((AlertDialog)sender).Cancel(); }); diagBuilder.SetCancelable(false); diagBuilder.Create().Show(); }; }