public void Update(StationInventories.StationInventory station) { var sortedList = from StationInventories.InventoryItem item in station.Inventory orderby item.Name select item; StationInventories.InventoryItem[] items = sortedList.ToArray(); this.Clear(); this.alphaIndex.Clear(); this.AddAll(items); for (int i = 0; i < items.Length; i++) { var key = items[i].Name[0].ToString(); if (!alphaIndex.ContainsKey(key)) { alphaIndex.Add(key, i); } } var sortedKeys = from string letter in alphaIndex.Keys orderby letter select letter; sections = sortedKeys.ToArray(); sectionsObjects = new object[sections.Length]; for (int i = 0; i < sections.Length; i++) { sectionsObjects[i] = new string(sections[i]); } this.NotifyDataSetChanged(); }
private void CreateTab(StationInventories.StationInventory station) { StationInventoryAdapter adapter = new StationInventoryAdapter(this); adapter.Update(station); StationInventoryListFragment fragment = new StationInventoryListFragment(adapter, this); var tab = this.ActionBar.NewTab(); tab.SetText(station.Name); tab.SetTabListener(this); tab.SetTag(fragment); switch (station.Faction) { case Factions.SOLRAIN: tab.SetIcon(R.Drawables.solrain); break; case Factions.QUANTAR: tab.SetIcon(R.Drawables.quantar); break; case Factions.OCTAVIUS: tab.SetIcon(R.Drawables.octavius); break; case Factions.HYPERIAL: tab.SetIcon(R.Drawables.hyperial); break; case Factions.AMANANTH: tab.SetIcon(R.Drawables.amananth); break; case Factions.UNREGULATED: tab.SetIcon(R.Drawables.tri); break; } this.ActionBar.AddTab(tab); }