public AreaSettingPageXaml()
        {
            // json データがあれば読み込み、デシリアライズして vm に設定します。
            var data = DependencyService.Get <ISaveAndLoad>().LoadData("settings.json");

            this.vm             = (string.IsNullOrEmpty(data) || data == "null") ? new AreaSettingPageViewModel() : JsonConvert.DeserializeObject <AreaSettingPageViewModel>(data);
            this.BindingContext = vm;

            InitializeComponent();
        }
Beispiel #2
0
        /// <summary>
        /// 抽出対象になっている都道府県を HashSet に入れるメソッドです。
        /// </summary>
        void ChooseCity()
        {
            cities.Clear();
            var data = DependencyService.Get <ISaveAndLoad>().LoadData("settings.json");

            //if (string.IsNullOrEmpty(data) || data == "null")
            //    vm = new AreaSettingPageViewModel();
            //else
            //    vm = JsonConvert.DeserializeObject<AreaSettingPageViewModel>(data);
            vm = (string.IsNullOrEmpty(data) || data == "null") ? new AreaSettingPageViewModel() : JsonConvert.DeserializeObject <AreaSettingPageViewModel>(data);

            #region 長すぎる…

            if (vm.HokkaidoValue)
            {
                cities.Add("北海道");
            }
            if (vm.AomoriValue)
            {
                cities.Add("青森県");
            }
            if (vm.IwateValue)
            {
                cities.Add("岩手県");
            }
            if (vm.MiyagiValue)
            {
                cities.Add("宮城県");
            }
            if (vm.AkitaValue)
            {
                cities.Add("秋田県");
            }
            if (vm.YamagataValue)
            {
                cities.Add("山形県");
            }
            if (vm.FukushimaValue)
            {
                cities.Add("福島県");
            }
            if (vm.IbarakiValue)
            {
                cities.Add("茨城県");
            }
            if (vm.TochigiValue)
            {
                cities.Add("栃木県");
            }
            if (vm.GunmaValue)
            {
                cities.Add("群馬県");
            }
            if (vm.SaitamaValue)
            {
                cities.Add("埼玉県");
            }
            if (vm.ChibaValue)
            {
                cities.Add("千葉県");
            }
            if (vm.TokyoValue)
            {
                cities.Add("東京都");
            }
            if (vm.KanagawaValue)
            {
                cities.Add("神奈川県");
            }
            if (vm.NiigataValue)
            {
                cities.Add("新潟県");
            }
            if (vm.ToyamaValue)
            {
                cities.Add("富山県");
            }
            if (vm.IshikawaValue)
            {
                cities.Add("石川県");
            }
            if (vm.FukuiValue)
            {
                cities.Add("福井県");
            }
            if (vm.YamanashiValue)
            {
                cities.Add("山梨県");
            }
            if (vm.NaganoValue)
            {
                cities.Add("長野県");
            }
            if (vm.GifuValue)
            {
                cities.Add("岐阜県");
            }
            if (vm.ShizuokaValue)
            {
                cities.Add("静岡県");
            }
            if (vm.AichiValue)
            {
                cities.Add("愛知県");
            }
            if (vm.MieValue)
            {
                cities.Add("三重県");
            }
            if (vm.ShigaValue)
            {
                cities.Add("志賀県");
            }
            if (vm.KyotoValue)
            {
                cities.Add("京都府");
            }
            if (vm.OsakaValue)
            {
                cities.Add("大阪府");
            }
            if (vm.HyogoValue)
            {
                cities.Add("兵庫県");
            }
            if (vm.NaraValue)
            {
                cities.Add("奈良県");
            }
            if (vm.WakayamaValue)
            {
                cities.Add("和歌山県");
            }
            if (vm.TottoriValue)
            {
                cities.Add("鳥取県");
            }
            if (vm.ShimaneValue)
            {
                cities.Add("島根県");
            }
            if (vm.OkayamaValue)
            {
                cities.Add("岡山県");
            }
            if (vm.HiroshimaValue)
            {
                cities.Add("広島県");
            }
            if (vm.YamaguchiValue)
            {
                cities.Add("山口県");
            }
            if (vm.TokushimaValue)
            {
                cities.Add("徳島県");
            }
            if (vm.KagawaValue)
            {
                cities.Add("香川県");
            }
            if (vm.EhimeValue)
            {
                cities.Add("愛媛県");
            }
            if (vm.KochiValue)
            {
                cities.Add("高知県");
            }
            if (vm.FukuokaValue)
            {
                cities.Add("福岡県");
            }
            if (vm.SagaValue)
            {
                cities.Add("佐賀県");
            }
            if (vm.NagasakiValue)
            {
                cities.Add("長崎県");
            }
            if (vm.KumamotoValue)
            {
                cities.Add("熊本県");
            }
            if (vm.OitaValue)
            {
                cities.Add("大分県");
            }
            if (vm.MiyazakiValue)
            {
                cities.Add("宮崎県");
            }
            if (vm.KagoshimaValue)
            {
                cities.Add("鹿児島県");
            }
            if (vm.OkinawaValue)
            {
                cities.Add("沖縄県");
            }
            if (vm.OtherValue)
            {
                cities.Add("その他");
            }
            #endregion
#if DEBUG
            foreach (var item in cities)
            {
                System.Diagnostics.Debug.WriteLine("Cities: " + item);
            }
#endif
        }
        /// <summary>
        /// vm のインスタンスを json にシリアライズして保存するメソッドです。
        /// </summary>
        private void SaveDataToJson(AreaSettingPageViewModel vm)
        {
            var json = JsonConvert.SerializeObject(vm);

            DependencyService.Get <ISaveAndLoad>().SaveData("settings.json", json);
        }