Example #1
0
        private void StartActionFromNavigationDrawer(object sender, AdapterView.ItemClickEventArgs e)
        {
            this.DrawerLayout.CloseDrawer(this.SideMenu);
            SideMenuAction action = this.SideMenuActions [e.Position];

            if (action.ActionTypes.Contains(SideMenuActionType.EXECUTE_ACTION) && action.PerformAction != null)
            {
                action.PerformAction();
            }
            else if (action.ActionTypes.Contains(SideMenuActionType.START_ACTIVITY))
            {
                StartActivity(action.Intent);
            }
        }
Example #2
0
        public List <SideMenuAction> GetCustomSideMenuItemsFromArrayOfTypes(List <SideMenuItemIds> sideMenuItemIds)
        {
            this.SideMenuActions = new List <SideMenuAction> ();

            foreach (SideMenuItemIds sideMenuItemId in sideMenuItemIds)
            {
                switch (sideMenuItemId)
                {
                case SideMenuItemIds.HOME:
                {
                    SideMenuAction action = new SideMenuAction();
                    Intent         intent = new Intent(this.Context, typeof(MainMenuActivity));
                    intent.SetFlags(ActivityFlags.SingleTop);
                    action.Id          = SideMenuItemIds.HOME;
                    action.ActionTypes = new List <SideMenuActionType> {
                        SideMenuActionType.START_ACTIVITY
                    };
                    action.Title  = this.Context.GetString(Resource.String.LandingScreenTitle);
                    action.Intent = intent;
                    this.SideMenuActions.Add(action);
                    break;
                }

                case SideMenuItemIds.HELP:
                {
                    SideMenuAction action = new SideMenuAction();
                    action.Id          = SideMenuItemIds.HELP;
                    action.ActionTypes = new List <SideMenuActionType> {
                        SideMenuActionType.NO_ACTION
                    };
                    action.Title = this.Context.GetString(Resource.String.HelpCellTitle);
                    this.SideMenuActions.Add(action);
                    break;
                }

                case SideMenuItemIds.SETTINGS:
                {
                    SideMenuAction action = new SideMenuAction();
                    Intent         intent = new Intent(this.Context, typeof(SettingsActivity));
                    intent.SetFlags(ActivityFlags.ClearTask);
                    action.Id          = SideMenuItemIds.SETTINGS;
                    action.ActionTypes = new List <SideMenuActionType> {
                        SideMenuActionType.START_ACTIVITY
                    };
                    action.Title  = this.Context.GetString(Resource.String.SettingsCellTitle);
                    action.Intent = intent;
                    this.SideMenuActions.Add(action);
                    break;
                }

                case SideMenuItemIds.SIGN_OUT:
                {
                    SideMenuAction action = new SideMenuAction();
                    Intent         intent = new Intent(this.Context, typeof(LoginActivity));
                    intent.SetFlags(ActivityFlags.ClearTask | ActivityFlags.NewTask);
                    action.Id          = SideMenuItemIds.SIGN_OUT;
                    action.ActionTypes = new List <SideMenuActionType> {
                        SideMenuActionType.START_ACTIVITY
                    };
                    action.Title  = this.Context.GetString(Resource.String.SignOutTitle);
                    action.Intent = intent;
                    this.SideMenuActions.Add(action);
                    break;
                }

                case SideMenuItemIds.SUPPORT:
                {
                    SideMenuAction action = new SideMenuAction();
                    action.Id          = SideMenuItemIds.SUPPORT;
                    action.ActionTypes = new List <SideMenuActionType> {
                        SideMenuActionType.NO_ACTION
                    };
                    action.Title = this.Context.GetString(Resource.String.SupportCellTitle);
                    this.SideMenuActions.Add(action);
                    break;
                }

                case SideMenuItemIds.SYNCHRONIZE:
                {
                    SideMenuAction action = new SideMenuAction();
                    action.Id          = SideMenuItemIds.SYNCHRONIZE;
                    action.ActionTypes = new List <SideMenuActionType> {
                        SideMenuActionType.NO_ACTION
                    };
                    action.Title = this.Context.GetString(Resource.String.SynchronizeScreenTitle);
                    this.SideMenuActions.Add(action);
                    break;
                }
                }
            }

            return(this.SideMenuActions);
        }