通常、新しいアクティビティを開始したい場合は、
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]
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