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的修改值?