Xamarin.Android多窗口传值【1】

这种非常常见的场景我觉得大家都遇到过,那么我么可以通过Activity进行编码传值。

using System.Text;
using System;
using Android.App;
using Android.OS;
using Android.Widget;

namespace XamarinDemo
{
    [Activity(Label = "@string/translationHistory")]
    public class TranslationHistoryActivity : ListActivity
    {
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            var phoneNumbers = Intent.Extras.GetStringArrayList("phone_numbers") ?? new string[0];
            this.ListAdapter = new ArrayAdapter(this, Android.Resource.Layout.SimpleListItem1, phoneNumbers);
        }
    }
}   

  然后在MainActivity.cs中进行获取,给一个按钮事件委托。

 translationHistoryButton.Click += (sender, e) =>
             {
                 var intent = new Intent(this, typeof(TranslationHistoryActivity));
                 intent.PutStringArrayListExtra("phone_numbers", phoneNumbers);
                 StartActivity(intent);
             };

  ok,就这样。

你可能感兴趣的:(Xamarin.Android多窗口传值【1】)