Xamarin,Spinner SharedPreferences错误?

时间:2018-06-19 07:28:36

标签: xamarin sharedpreferences

public class RD_OSBG : Fragment
{
    Spinner _BG_Position;

    public override void OnCreate(Bundle savedInstanceState)
    {
        base.OnCreate(savedInstanceState);

        ISharedPreferences prefs = Application.Context.GetSharedPreferences("Test", FileCreationMode.Private);
        _BG_Position.SetSelection(prefs.GetInt("Test_Data", 0));

        // Create your fragment here
    }


    public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
    {
        View _RD_OSBG = inflater.Inflate(Resource.Layout.RD_OSBG_Layout, container, false);

        _BG_Position = (Spinner)_RD_OSBG.FindViewById(Resource.Id._BG_Position);
        ArrayList _BG_Position_Contents = new ArrayList { "Bow", "Stern" };
        _BG_Position.Adapter = new ArrayAdapter(this.Activity, Resource.Layout.Custom_Spinner, Resource.Id._Custom_Spinner_Text, _BG_Position_Contents);

        ISharedPreferences prefs = Application.Context.GetSharedPreferences("Test", FileCreationMode.Private);
        ISharedPreferencesEditor editor = prefs.Edit();


        _BG_Position.ItemSelected += (s, e) =>
        {
            switch(e.Position)
            {
                case 1:
                    Toast.MakeText(this.Activity, "Stern", ToastLength.Short).Show();
                    //_SaveSharedPreferences("Test", "Stern");
                    editor.PutInt("Test_Data", e.Position);
                    editor.Commit();
                    break;
            }

        };

      return _RD_OSBG;
    }

错误:Java.Lang.ClassCastException:java.lang.String无法强制转换为java.lang.Integer

当前状态与我们在代码中看到的相同

错误是下面的错误。 发生错误的部分如下。 ===> _BG_Position.SetSelection(prefs.GetInt(“Test_Data”,0));

如何在ISharedPreferences中保存Spinner的修改值?

0 个答案:

没有答案