private void SelectItem(ListView sender, AdapterView.ItemClickEventArgs args) { // find the item clicked SalesAppHamburgerAdapter hamburgerAdapter = (SalesAppHamburgerAdapter)_drawerList.Adapter; NavItem item = hamburgerAdapter.GetItem(args.Position); // close the drawer _drawerLayout.CloseDrawer((int)GravityFlags.Left); // start the target if (item.Target != null && ((item.Target.IsSubclassOf(typeof(ActivityBase))) || (item.Target.IsSubclassOf(typeof(ActivityBase2))))) { // if already on target screen, ignore if (GetType() == item.Target) { return; } // start the target activity var intent = new Intent(this, item.Target); intent.AddFlags(ActivityFlags.ClearTop); StartActivity(intent); // if on Welcome Activity, do not Finish the activity if (GetType() != typeof(HomeView)) { Finish(); } } }
private async Task AddDrawerItems(List <NavItem> items) { try { SalesAppHamburgerAdapter hamburgerAdapter = null; await Task.Run(() => { hamburgerAdapter = new SalesAppHamburgerAdapter(this, items); }); RunOnUiThread(() => { _drawerList.Adapter = hamburgerAdapter; }); } catch (Exception exception) { Logger.Error(exception); throw; } }