[アイテムの追加]ボタンとリストビューを備えたMainActivityクラスと、テキストボックスと[保存]ボタンを備えたPASSWORDActivityクラスがあります。ユーザーは「アイテムの追加」をクリックし、PASSWORDActivity画面に移動してアイテムを入力し、「保存」をクリックしてから、更新されたMainActivity画面に戻る必要があります。
(ところで、私はMonoDroidを使用していますが、これはMonoDroid固有の問題である必要はないと思います)。
私の「アイテムの追加」クリックイベント(メインアクティビティ):
private void addItemButton_Click(object sender, EventArgs e)
{
var intent = new Intent();
intent.SetClassName(this, "monoApp.AddItemClassName");
StartActivityForResult(intent, 0);
}
私の「保存」クリックイベント(アイテムの追加アクティビティ時):
private void saveButton_Click(object sender, EventArgs e)
{
var itemname = FindViewById<EditText>(Resource.id.itemName);
_repo.SaveItem(new Item() {Name = itemname.Text.ToString()});
Toast.MakeText(this, "You saved: " + itemname.Text, ToastLength.Short).Show();
var intent = new Intent();
SetResult(Result.Ok, intent);
Finish();
}
そして、メインアクティビティに戻ります。
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
RefreshTheList();
}
これは、初めて、魅力のように機能します。画面が「アイテムの追加」にスライドし、完了するとメインに戻ります。2回目はスライドしますが、意味がある場合は、スライドして元に戻ります。そして、もう一度保存を押すと、正常に動作するようになります。
ビデオが役立つ場合は、私が見ているもののクリップをTwitVidに投稿しました:http ://www.twitvid.com/W7XZC
基本的に、私はそれが「それ自体に戻る」ことを望んでいないので、私は何を間違っているのですか?