2012-06-27 119 views
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

+0

當你這樣做時究竟發生了什麼?它怎麼會變得惱人?你得到的錯誤是什麼? – Cheesebaron

+0

你能否詳細說一下「生氣」?您可以從活動中創建意圖,以便代碼良好。事實上,StartActivity(typeof(foo))只是一個快捷方式,可爲您提供意圖。 –

+0

由於「惱火」,編譯器告訴我我做錯了。我已經設法以另一種方式解決它(我喜歡這樣做),所以感謝您的幫助:) – Nodoid

回答

0

看起來像我需要使用這是其他地方沒有需要補充。

感謝您對找回:)

承諾,在未來,我會確保一切都更清晰的答案,遺憾的延遲。

相關問題