我有一個MainActivity類與一個「添加項目」按鈕和一個列表視圖和一個AddItemActivity類與一個文本框和一個「保存」按鈕。用戶應該點擊「Add Item」,進入AddItemActivity屏幕,輸入一個項目,點擊'save',然後返回到更新的MainActivity屏幕。Android的StartActivityForResult和完成(帶視頻)
(順便說一句,我使用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();
}
這在第一次就像一個魅力。屏幕滑動到「添加項目」,然後在完成後滑回主界面。 第二次,它滑過,但它然後滑回本身,如果這是有道理的。然後,如果我再次點擊保存,它會恢復正常工作。
如果視頻會有所幫助,我已經張貼的我所看到的來TwitVid剪輯:http://www.twitvid.com/W7XZC
基本上,我不希望它「滑回自己」永遠,所以我是什麼做錯了?
永遠不要低估第二組眼睛的力量:)記錄做到了 - 點擊事件方法被解僱了兩次,因爲我錯誤地綁定了它兩次。謝謝! – 2010-10-31 20:53:15