1
通常情況下,如果我要開始新的活動,我可以使用開始一個新的活動,但不同的意圖
StartActivity(typeof(foo));
這是好的。
我還可以設置一個意圖
Intent i = new Intent(this, typeof(foo));
StartActivity(i);
問題是這樣的。我有活動A.這引發了活動B.但是,我需要在使用PutExtra之後在活動中啓動活動B.如果我這樣做
Intent i = new Intent(this, typeof(ActivityB));
monodroid得到正確的惹惱,因爲我從一個Activity中定義了一個新的Intent。
有沒有辦法做到這一點
(僞代碼)
[Activity]
public partial class A
{
protected override void OnCreate(Bundle savedInstance)
{
SetContentView(Resource.Layout.layout);
Button btnClick = FindViewById<Button>(Resource.Id.btnClicky);
btnClick.Click += new EventHandler(button_click);
}
private void button_Click(object s, EventArgs e)
{
Intent i = new Intent(this, typeof(B)); // <- gets annoyed
i.PutExtra("foo", 1);
i.PutExtra("bar", true);
StartActivity(i);
}
}
這裏任何幫助,將不勝感激。
PFJ
當你這樣做時究竟發生了什麼?它怎麼會變得惱人?你得到的錯誤是什麼? – Cheesebaron
你能否詳細說一下「生氣」?您可以從活動中創建意圖,以便代碼良好。事實上,StartActivity(typeof(foo))只是一個快捷方式,可爲您提供意圖。 –
由於「惱火」,編譯器告訴我我做錯了。我已經設法以另一種方式解決它(我喜歡這樣做),所以感謝您的幫助:) – Nodoid