1

根据教程中的示例使用 XamarinStudio 和以下代码库。这里的问题。

  1. 测试 App 时是否需要从 Project Option> Android Application 生成 AndroidManifest?

为什么即使我生成了 AndroidManifest 也没有数据通过,代码:

---活动一  

[活动(标签=“HelloMultiScreen”,MainLauncher = true,图标=“@dr​​awable/icon”)]

    公共类FirstActivity:活动

    {

        整数计数 = 1;



        protected override void OnCreate(捆绑包)

        {

            base.OnCreate(捆绑);



            //使用Main.axml中创建的UI

            SetContentView (Resource.Layout.Main);



            var showSecond = FindViewById (Resource.Id.showSecond);

            showSecond.Click += (sender, e) => {

                var second = new Intent(this, typeof(SecondActivity));

                second.PutExtra("FirstData", "Data from FirstActivity");

                StartActivity (typeof(SecondActivity));

            };

        }

    }


---活动二

    [活动(标签=“第二活动”)]           

    公共类SecondActivity:活动

    {

        protected override void OnCreate(捆绑包)

        {

            base.OnCreate(捆绑);


            // 在此处创建您的应用程序


            SetContentView (Resource.Layout.Second);

            var label = FindViewById (Resource.Id.screen2Label);

            label.Text = Intent.GetStringExtra("FirstData") ?? “数据不可用”;

        }

    }

谢谢

4

1 回答 1

0

好的,当我自己重新制作项目时,我发现了问题。问题在于这段代码:

var second = new Intent(this, typeof(SecondActivity));
second.PutExtra("FirstData", "Data from FirstActivity");
StartActivity (typeof(SecondActivity));

发生的情况是您使用正确的数据创建了一个 Intent。但是您在没有该数据的情况下开始了一项新活动。要修复它,请将代码更改为:

var second = new Intent(this, typeof(SecondActivity));
second.PutExtra("FirstData", "Data from FirstActivity");
StartActivity(second);`
于 2013-05-14T09:40:56.960 回答