public override void PrepareForSegue(UIStoryboardSegue segue, Foundation.NSObject sender) { switch (segue.Identifier) { case "LeaguesSegue": var vc = segue.DestinationViewController as LeagueChooserViewController; var leagues = AppDelegate.SharedAppDelegate.UoW.LeagueRepo.GetLeaguesByCountry(countries[TableView.IndexPathForSelectedRow.Row].ToEnum <CountriesEnum>()); var userdefaults = NSUserDefaults.StandardUserDefaults; var models = new List <LeagueChooserViewController.ChooserModel>(); List <int> userLeaguesIds; try { userLeaguesIds = JsonConvert.DeserializeObject <List <int> >(userdefaults.StringForKey("leagues")); } catch (Exception) { userLeaguesIds = new List <int>(); } foreach (var league in leagues) { var model = new LeagueChooserViewController.ChooserModel(); model.Name = league.Name; model.Id = league.Id; model.Value = userLeaguesIds.Contains(league.Id); models.Add(model); } vc.Leagues = models; vc.Key = "leagues"; break; default: break; } }
public override void PrepareForSegue(UIStoryboardSegue segue, NSObject sender) { switch (segue.Identifier) { case "LeaguesSegue": var vc = segue.DestinationViewController as LeagueChooserViewController; if (TableView.IndexPathForSelectedRow.Row == 0) { vc.Key = "onehour"; } else { if (TableView.IndexPathForSelectedRow.Row == 1) { vc.Key = "event"; } else { if (TableView.IndexPathForSelectedRow.Row == 2) { vc.Key = "today"; } } } var userdefaults = NSUserDefaults.StandardUserDefaults; List <int> userLeaguesIds; try { userLeaguesIds = JsonConvert.DeserializeObject <List <int> >(userdefaults.StringForKey("leagues")); } catch (Exception) { userLeaguesIds = new List <int>(); } var models = new List <LeagueChooserViewController.ChooserModel>(); List <int> leagueIds; try { leagueIds = JsonConvert.DeserializeObject <List <int> >(userdefaults.StringForKey(vc.Key)); } catch (Exception) { leagueIds = new List <int>(); } foreach (var league in AppDelegate.SharedAppDelegate.UoW.LeagueRepo.GetLeaguesByIds(userLeaguesIds)) { var model = new LeagueChooserViewController.ChooserModel(); model.Name = league.Name; model.Id = league.Id; model.Value = leagueIds.Contains(league.Id); models.Add(model); } vc.Leagues = models; break; default: break; } }