예제 #1
0
        private void DisableDrawer()
        {
            _drawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
            _drawerToggle.DrawerIndicatorEnabled = false;

            _drawerToggle.SyncState();
        }
        public void SetDrawerState(bool isEnabled)
        {
            try
            {
                if (isEnabled)
                {
                    _drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
                    drawerToggle.OnDrawerStateChanged(DrawerLayout.LockModeUnlocked);
                    drawerToggle.DrawerIndicatorEnabled = (true);
                    SupportActionBar.SetDisplayHomeAsUpEnabled(true);
                    SupportActionBar.SetHomeButtonEnabled(true);
                    drawerToggle.SyncState();
                }
                else
                {
                    _drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
                    drawerToggle.OnDrawerStateChanged(DrawerLayout.LockModeUnlocked);
                    drawerToggle.DrawerIndicatorEnabled = (false);
                    SupportActionBar.SetDisplayHomeAsUpEnabled(false);
                    SupportActionBar.SetHomeButtonEnabled(false);

                    drawerToggle.SyncState();
                }
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine("Set Drawer State : " + e.Message);
            }
        }
예제 #3
0
        public void OnBackStackChanged()
        {
            InputMethodManager inputMethodManager = (InputMethodManager)GetSystemService(InputMethodService);
            var currentFocus = Window.CurrentFocus;

            if (currentFocus != null)
            {
                inputMethodManager.HideSoftInputFromWindow(currentFocus.WindowToken, 0);
            }
            Android.Support.V4.App.Fragment fr = SupportFragmentManager.FindFragmentById(Resource.Id.contentPanel);

            string fm_name = fr.Class.SimpleName;

            if (fm_name.Contains("Home_fragment"))
            {
                drawer.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
                toggle.DrawerIndicatorEnabled = true;
                SupportActionBar.SetDisplayHomeAsUpEnabled(false);
                toggle.SyncState();
            }
            else
            {
                drawer.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);

                toggle.DrawerIndicatorEnabled = true;
                SupportActionBar.SetDisplayHomeAsUpEnabled(true);
                toggle.SyncState();
            }
            //initComponent();
            //loadFragment(new HomeeeFragment());
        }
예제 #4
0
        private void ShowBackButton()
        {
            //TODO Tell the toggle to set the indicator off
            //this.DrawerToggle.DrawerIndicatorEnabled = false;

            //Block the menu slide gesture
            DrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
        }
예제 #5
0
 public void SetDrawerState(bool isEnabled)
 {
     if (isEnabled)
     {
         drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
     }
     else
     {
         drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
     }
 }
예제 #6
0
 public void SetDrawerEnabled(bool drawer)
 {
     if (drawer)
     {
         mDrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
         mDrawerToggle.DrawerIndicatorEnabled = true;
     }
     else
     {
         mDrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
         mDrawerToggle.DrawerIndicatorEnabled = false;
     }
 }
예제 #7
0
 public void ShowSideMenu(bool locked)
 {
     if (locked)
     {
         toolbar.Visibility = ViewStates.Gone;
         drawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
     }
     else
     {
         toolbar.Visibility = ViewStates.Visible;
         drawer.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
     }
 }
예제 #8
0
 public void ShowSideMenu(bool locked)
 {
     if (locked)
     {
         mToolbar.Visibility = ViewStates.Invisible;
         mDrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
     }
     else
     {
         SupportActionBar.Show();
         mToolbar.Visibility = ViewStates.Visible;
         mDrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
     }
 }
예제 #9
0
        private void ShowBackButton()
        {
            //TODO Tell the toggle to set the indicator off
            //this.DrawerToggle.DrawerIndicatorEnabled = false;

            var fr = SupportFragmentManager.FindFragmentById(Resource.Id.content_frame) as ContentFragment;

            if (fr?.DrawerToggle != null)
            {
                fr.DrawerToggle.DrawerIndicatorEnabled = false;
            }

            //Block the menu slide gesture
            DrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
        }
예제 #10
0
        void UpdateFlyoutBehavior()
        {
            var behavior = VirtualView.FlyoutBehavior;
            var details  = _detailView;

            if (details == null)
            {
                return;
            }

            switch (behavior)
            {
            case FlyoutBehavior.Disabled:
            case FlyoutBehavior.Locked:
                DrawerLayout.CloseDrawers();
                DrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
                break;

            case FlyoutBehavior.Flyout:
                DrawerLayout.SetDrawerLockMode(VirtualView.IsGestureEnabled ? DrawerLayout.LockModeUnlocked : DrawerLayout.LockModeLockedClosed);
                break;
            }

            LayoutViews();
        }
예제 #11
0
        public async void InitilizeDrawer()
        {
            drawer     = (DrawerLayout)FindViewById(Resource.Id.drawerLayout);
            navigation = (NavigationView)FindViewById(Resource.Id.navView);
            View headerLayout = navigation.InflateHeaderView(Resource.Menu.header);

            TextView headerName    = (TextView)headerLayout.FindViewById(Resource.Id.WelcomeUser);
            TextView headerEmail   = (TextView)headerLayout.FindViewById(Resource.Id.UserEmail);
            TextView headerBalance = (TextView)headerLayout.FindViewById(Resource.Id.HeaderWalletBalance);

            Wallet wallet = await GetWalletData();

            if (wallet != null)
            {
                string result = "Balance: RM " + wallet.Balance + ".00";
                headerBalance.Text = result;
            }
            else
            {
                string result = "Balance: RM 0.00";
                headerBalance.Text = result;
            }

            headerName.Text  = user.FirstName + " " + user.LastName;
            headerEmail.Text = user.Email;

            drawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
        }
        public override void OnBackPressed()
        {
            Stack <Fragment> stack = stacks[(int)App.STATE.CurrentLibrary];

            if (stack.Count > 0)
            {
                if (stack.Count == 1)
                {
                    drawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed, nav);
                }
                base.OnBackPressed();
            }
            else
            {
                MaterialDialog         dialog = null;
                MaterialDialog.Builder popup  = new MaterialDialog.Builder(this);
                popup.SetTitle("Exit Application?");
                popup.SetPositiveText("Yes", (o, e) =>
                {
                    base.OnBackPressed();
                });
                popup.SetNegativeText("No");

                dialog = popup.Show();
            }
        }
 private void ConfigureNavigationDrawer()
 {
     _drawerLayout = FindViewById <DrawerLayout>(Resource.Id.drawer_layout);
     _drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedOpen);
     _navigationView = FindViewById <NavigationView>(Resource.Id.nav_view);
     _navigationView.SetNavigationItemSelectedListener(this);
 }
예제 #14
0
        public void SetActionBarForDashboard()
        {
            HandleActionBarTitles();

            OptionsItemSelected -= OnBackPressed;

            SetRefreshVisibility(true);

            SetToggle(_dashboardDrawerToggle ?? (_dashboardDrawerToggle = new ActionBarDrawerToggle(
                                                     this,    /* host Activity */
                                                     _drawer, /* DrawerLayout object */
                                                     Resource.Drawable.ic_navigation_drawer,
                                                     Resource.String.App_Open,
                                                     Resource.String.App_Close
                                                     )));
            _drawer.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
            _dashboardDrawerToggle.DrawerIndicatorEnabled = true;
        }
예제 #15
0
        public void SetDrawerEnabled(bool enabled)
        {
            mDrawerLayout = FindViewById <DrawerLayout>(Resource.Id.myMenuDrawer);

            int lockMode = enabled ? DrawerLayout.LockModeUnlocked :
                           DrawerLayout.LockModeLockedClosed;

            mDrawerLayout.SetDrawerLockMode(lockMode);
        }
        private void RefreshNavViewCheckedItem()
        {
            NavigationView navigationView = FindViewById <NavigationView>(Resource.Id.nav_view);
            DrawerLayout   drawer         = FindViewById <DrawerLayout>(Resource.Id.drawer_layout);
            Fragment       fragment       = SupportFragmentManager.FindFragmentById(Resource.Id.fragment_container);

            if (fragment is WeatherNowFragment)
            {
                navigationView.SetCheckedItem(Resource.Id.nav_weathernow);
                SupportActionBar.Title = GetString(Resource.String.title_activity_weather_now);
            }
            else if (fragment is LocationsFragment)
            {
                navigationView.SetCheckedItem(Resource.Id.nav_locations);
                SupportActionBar.Title = GetString(Resource.String.label_nav_locations);
            }
            else if (fragment is WeatherAlertsFragment)
            {
                navigationView.SetCheckedItem(Resource.Id.nav_weathernow);
                SupportActionBar.Title = GetString(Resource.String.title_fragment_alerts);
            }

            if (fragment is WeatherAlertsFragment)
            {
                SupportActionBar.Hide();
                drawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
            }
            else
            {
                if (!SupportActionBar.IsShowing)
                {
                    SupportActionBar.Show();
                }

                if ((bool)Intent?.HasExtra("shortcut-data"))
                {
                    drawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
                }
                else
                {
                    drawer.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
                }
            }
        }
예제 #17
0
 private void SetDrawerState(bool isEnabled)
 {
     if (isEnabled)
     {
         SupportActionBar.SetHomeButtonEnabled(false);
         drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
         ActionBarDrawerToggle.OnDrawerStateChanged(DrawerLayout.LockModeUnlocked);
         ActionBarDrawerToggle.DrawerIndicatorEnabled = true;
         ActionBarDrawerToggle.SyncState();
     }
     else
     {
         SupportActionBar.SetHomeButtonEnabled(true);
         drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
         ActionBarDrawerToggle.OnDrawerStateChanged(DrawerLayout.LockModeLockedClosed);
         ActionBarDrawerToggle.DrawerIndicatorEnabled = false;
         ActionBarDrawerToggle.SyncState();
     }
 }
예제 #18
0
 public void LockMenu()
 {
     try
     {
         if (null != drawerLayout)
         {
             drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
         }
         if (null != drawerToggle)
         {
             drawerToggle.DrawerIndicatorEnabled = false;
         }
         if (null != SupportActionBar)
         {
             SupportActionBar.SetDisplayHomeAsUpEnabled(false);
         }
     }
     catch (Exception e)
     {
         Console.WriteLine("An exception occured while locking the menu - " + e.StackTrace);
     }
 }
예제 #19
0
        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            base.OnCreateView(inflater, container, savedInstanceState);

            var view = this.BindingInflate(FragmentId, null);

            Toolbar = view.FindViewById <Toolbar>(Droid.Resource.Id.toolbar);
            if (Toolbar != null)
            {
                var mainActivity = Activity as MainActivity;
                if (mainActivity == null)
                {
                    return(view);
                }

                mainActivity.Title = "";
                mainActivity.SetSupportActionBar(Toolbar);

                if (ShowHamburgerMenu)
                {
                    mainActivity.SupportActionBar?.SetDisplayHomeAsUpEnabled(true);

                    DrawerLayout drawerLayout = mainActivity.FindViewById <DrawerLayout>(Droid.Resource.Id.drawer_layout);
                    drawerLayout?.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);

                    DrawerToggle = new MvxActionBarDrawerToggle(
                        Activity,                                                       // host Activity
                        mainActivity.DrawerLayout,                                      // DrawerLayout object
                        Toolbar,                                                        // nav drawer icon to replace 'Up' caret
                        Droid.Resource.String.drawer_open,                              // "open drawer" description
                        Droid.Resource.String.drawer_close                              // "close drawer" description
                        );

                    DrawerToggle.DrawerOpened += (sender, e) => mainActivity.HideSoftKeyboard();
                    mainActivity.DrawerLayout.AddDrawerListener(DrawerToggle);
                }
                else
                {
                    DrawerLayout drawerLayout = mainActivity.FindViewById <DrawerLayout>(Droid.Resource.Id.drawer_layout);
                    drawerLayout?.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
                }

                mainActivity.HideSoftKeyboard();
            }

            return(view);
        }
예제 #20
0
        private void InitDrawer()
        {
            Messenger.Default.Register <PageTitleMessage>(this, OnNewPageTitle);
            Messenger.Default.Register <ToolbarRequestMessage>(this, OnNewToolbarRequest);

            NavigationRecyclerView.SetAdapter(
                new RecyclerViewAdapterBuilder <HamburgerMenuEntryViewModel, HamburgerEntryHolder>()
                .WithContentStretching()
                .WithItems(ViewModel.HamburgerItems)
                .WithResourceId(LayoutInflater, Resource.Layout.nav_item)
                .WithDataTemplate(HamburgerItemDataTemplate)
                .WithHolderTemplate((parent, type, view) => new HamburgerEntryHolder(view, this))
                .Build());

            var divider = new DividerItemDecoration(this, DividerItemDecoration.Vertical);

            divider.SetDrawable(Resources.GetDrawable(Resource.Drawable.separator_transparent, Theme));
            NavigationRecyclerView.AddItemDecoration(divider);
            NavigationRecyclerView.SetLayoutManager(new LinearLayoutManager(this));

            SetUpHamburgerButton();
            Toolbar.MenuItemClick += ToolbarOnMenuItemClick;

            Bindings.Add(this.SetBinding(() => ViewModel.IsDrawerEnabled).WhenSourceChanges(() =>
            {
                if (ViewModel.IsDrawerEnabled)
                {
                    DrawerLayout.SetDrawerLockMode(global::Android.Support.V4.Widget.DrawerLayout.LockModeUndefined);
                    DrawerLayout.AddDrawerListener(_hamburgerToggle);
                    _hamburgerToggle.SyncState();
                    _hamburgerButtonAdded = true;
                }
                else
                {
                    DrawerLayout.SetDrawerLockMode(global::Android.Support.V4.Widget.DrawerLayout.LockModeLockedClosed);
                    if (_hamburgerButtonAdded)
                    {
                        DrawerLayout.RemoveDrawerListener(_hamburgerToggle);
                    }
                }
            }));

            //Don't use object initializer
            _settingsButtonHolder           = new HamburgerEntryHolder(SettingsNavButton, this);
            _settingsButtonHolder.ViewModel = ViewModel.SettingsButtonViewModel;
        }
예제 #21
0
        public override void OnResume()
        {
            base.OnResume();

            // Disable right nav drawer
            var          activity = ((MainLibraryActivity)Activity);
            ListView     nav      = activity.nav;
            DrawerLayout drawer   = activity.drawer;

            drawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed, nav);

            AttachStackedFragments();

            UpdateUI();

            Console.WriteLine("LibraryFragment -> Resume " + LibraryMode.ToString());
        }
예제 #22
0
        void UpdateFlyoutBehavior()
        {
            var behavior = VirtualView.FlyoutBehavior;

            if (_detailViewFragment?.DetailView?.Handler?.PlatformView == null)
            {
                return;
            }

            switch (behavior)
            {
            case FlyoutBehavior.Disabled:
            case FlyoutBehavior.Locked:
                DrawerLayout.CloseDrawers();
                DrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
                break;

            case FlyoutBehavior.Flyout:
                DrawerLayout.SetDrawerLockMode(VirtualView.IsGestureEnabled ? DrawerLayout.LockModeUnlocked : DrawerLayout.LockModeLockedClosed);
                break;
            }

            LayoutViews();
        }
 private void ShowBackButton()
 {
     DrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
 }
예제 #24
0
 public void SetDrawerLockMode(GravityFlags flag, LockMode lockMode)
 {
     _drawer.SetDrawerLockMode((int)lockMode, (int)flag);
 }
예제 #25
0
        /// <summary>
        /// Handles BtnPlay click event
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void MBtnPlay_Click(object sender, EventArgs e)
        {
            PuzzlePlayer player = new PuzzlePlayer(mPuzzlePanel, sCurrentLvl);

            if (mBtnPlay.Text == "Play")
            {
                #region Play button click event
                player.Play(mImage, this);
                if (sCurrentLvl == LVL_1_NUM)
                {
                    mLvl = "Level 1";
                }
                else if (sCurrentLvl == LVL_2_NUM)
                {
                    mLvl = "Level 2";
                }
                else if (sCurrentLvl == LVL_3_NUM)
                {
                    mLvl = "Level 3";
                }
                else
                {
                    mLvl = "Level 4";
                }
                mStatus       = "In-Game";
                mBtnPlay.Text = "Pause";
                Drawable img = ContextCompat.GetDrawable(this, Resource.Drawable.ic_pause_white);
                mBtnPlay.SetCompoundDrawablesWithIntrinsicBounds(img, null, null, null); // Set button icon
                mBtnBrowse.Enabled = false;
                mBtnBrowse.SetBackgroundResource(Resource.Drawable.btn_disabled_style);
                mStatusTimer.Enabled = true; // Start the status timer
                if (mMode == "Competitive")
                {
                    mSwaps = 0;
                    mMin   = mSec = mTimeInSeconds = 0;
                    mTime  = "00:00";
                }
                else
                {
                    mSwaps = -1;
                }
                StatusCardFrontFragment.StatusVisibility(true);
                mDrawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed); // Lock the navigation drawer
                #endregion
            }
            else if (mBtnPlay.Text == "Pause")
            {
                #region Pause button click event
                mPuzzlePanel.RemoveAllViews();
                mPuzzlePanel.AddView(mLayoutProgress);
                mPuzzlePanel.AddView(mLayoutMessage);
                mPuzzlePanel.AddView(mPicBoxWhole);
                mStatus       = "Paused";
                mBtnPlay.Text = "Retry";
                Drawable img = ContextCompat.GetDrawable(this, Resource.Drawable.ic_replay_white);
                mBtnPlay.SetCompoundDrawablesWithIntrinsicBounds(img, null, null, null); // Set button icon
                mBtnBrowse.Enabled = true;
                mBtnBrowse.SetBackgroundResource(Resource.Drawable.btn_orange_style);
                if (mShowingBack)
                {
                    FlipCard();
                }
                sIsFixed             = false;
                mStatusTimer.Enabled = false;
                StatusCardFrontFragment.StatusVisibility(false);
                mDrawer.SetDrawerLockMode(DrawerLayout.LockModeUnlocked); // Unlock the navigation drawer
                #endregion
            }
            else if (mBtnPlay.Text == "Retry")
            {
                #region Retry button click event
                player.Play(mImage, this);
                if (sCurrentLvl == LVL_1_NUM)
                {
                    mLvl = "Level 1";
                }
                else if (sCurrentLvl == LVL_2_NUM)
                {
                    mLvl = "Level 2";
                }
                else if (sCurrentLvl == LVL_3_NUM)
                {
                    mLvl = "Level 3";
                }
                else
                {
                    mLvl = "Level 4";
                }
                mStatus       = "In-Game";
                mBtnPlay.Text = "Pause";
                Drawable img = ContextCompat.GetDrawable(this, Resource.Drawable.ic_pause_white);
                mBtnPlay.SetCompoundDrawablesWithIntrinsicBounds(img, null, null, null); // Set button icon
                mBtnBrowse.Enabled = false;
                mBtnBrowse.SetBackgroundResource(Resource.Drawable.btn_disabled_style);
                mStatusTimer.Enabled = true; // Start the status timer
                if (mMode == "Competitive")
                {
                    mSwaps = 0;
                    mMin   = mSec = mTimeInSeconds = 0;
                    mTime  = "00:00";
                }
                else
                {
                    mSwaps = -1;
                }
                StatusCardFrontFragment.StatusVisibility(true);
                mDrawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed); // Lock the navigation drawer
                #endregion
            }

            mCurrentMode = mMode;
            StatusCardFrontFragment.StatusControl(mLvl, mCurrentMode, mStatus);
            StatusCardFrontFragment.SwapsControl(mSwaps);
            StatusCardFrontFragment.TimeControl(mTime);
        }
예제 #26
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);


            SetContentView(Resource.Layout.Main);
            LocationManager locationManager = GetSystemService(Context.LocationService) as LocationManager;

            mToolbar = FindViewById <SupportToolbar>(Resource.Id.toolbar);

            mToolbar      = FindViewById <SupportToolbar>(Resource.Id.toolbar);
            mDrawerLayout = FindViewById <DrawerLayout>(Resource.Id.drawer_layout);
            mLeftDrawer   = FindViewById <ListView>(Resource.Id.left_drawer);
            SetSupportActionBar(mToolbar);


            mDrawerToggle = new MyActionBarDrawerToggle(
                this,                           //Host Activity
                mDrawerLayout,                  //DrawerLayout
                Resource.String.openDrawer,     //Opened Message
                Resource.String.closeDrawer     //Closed Message
                );
            mDrawerLayout.SetDrawerListener(mDrawerToggle);
            SupportActionBar.SetHomeButtonEnabled(true);
            SupportActionBar.SetDisplayShowTitleEnabled(true);
            mDrawerToggle.SyncState();

            mListView = FindViewById <ListView>(Resource.Id.left_drawer);
            mItems    = new List <ItemMenu>();
            mItems.Add(new ItemMenu()
            {
                textViewMenu = GetString(Resource.String.login), imageViewMenu = Resource.Drawable.Login
            });
            mItems.Add(new ItemMenu()
            {
                textViewMenu = GetString(Resource.String.post), imageViewMenu = Resource.Drawable.Post
            });
            mItems.Add(new ItemMenu()
            {
                textViewMenu = GetString(Resource.String.locationManager), imageViewMenu = Resource.Drawable.Manager
            });
            mItems.Add(new ItemMenu()
            {
                textViewMenu = GetString(Resource.String.language), imageViewMenu = Resource.Drawable.Language
            });
            mItems.Add(new ItemMenu()
            {
                textViewMenu = GetString(Resource.String.about), imageViewMenu = Resource.Drawable.Info
            });
            mItems.Add(new ItemMenu()
            {
                textViewMenu = GetString(Resource.String.exit), imageViewMenu = Resource.Drawable.Exit
            });

            ListviewAdapterMenu adapter = new ListviewAdapterMenu(this, mItems);

            mListView.Adapter    = adapter;
            mListView.ItemClick += mListView_ItemClick;

            var newFragment = new GoogleMapFragment(locationManager);
            var ft          = SupportFragmentManager.BeginTransaction();

            ft.Add(Resource.Id.fragmentContainer, newFragment, "Fragment1");
            ft.Commit();
            mDrawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);

            //azure
            mClient = new MobileServiceClient(
                "https://placemap.azurewebsites.net"
                );
        }
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.activity_main);

            // Create your application here
            Toolbar toolbar = FindViewById <Toolbar>(Resource.Id.toolbar);

            SetSupportActionBar(toolbar);

            DrawerLayout drawer = FindViewById <DrawerLayout>(Resource.Id.drawer_layout);

            Android.Support.V7.App.ActionBarDrawerToggle toggle = new Android.Support.V7.App.ActionBarDrawerToggle(
                this, drawer, toolbar, Resource.String.navigation_drawer_open, Resource.String.navigation_drawer_close);
            drawer.AddDrawerListener(toggle);
            toggle.SyncState();

            NavigationView navigationView = FindViewById <NavigationView>(Resource.Id.nav_view);

            navigationView.SetNavigationItemSelectedListener(this);

            // Back stack listener
            SupportFragmentManager.BackStackChanged += delegate { RefreshNavViewCheckedItem(); };

            Fragment fragment = SupportFragmentManager.FindFragmentById(Resource.Id.fragment_container);

            // Alerts
            if (WeatherWidgetService.ACTION_SHOWALERTS.Equals(Intent?.Action))
            {
                Fragment newFragment = WeatherNowFragment.NewInstance(Intent.Extras);

                if (fragment == null)
                {
                    fragment = newFragment;
                    // Navigate to WeatherNowFragment
                    // Make sure we exit if location is not home
                    SupportFragmentManager.BeginTransaction()
                    .Replace(Resource.Id.fragment_container, fragment, "notification")
                    .Commit();
                }
                else
                {
                    // Navigate to WeatherNowFragment
                    // Make sure we exit if location is not home
                    SupportFragmentManager.BeginTransaction()
                    .Add(Resource.Id.fragment_container, newFragment)
                    .AddToBackStack(null)
                    .Commit();
                }
            }

            // Check if fragment exists
            if (fragment == null)
            {
                if (Intent.HasExtra("data"))
                {
                    fragment = WeatherNowFragment.NewInstance(Intent.Extras);
                }
                else
                {
                    fragment = new WeatherNowFragment();
                }

                // Navigate to WeatherNowFragment
                SupportFragmentManager.BeginTransaction()
                .Replace(Resource.Id.fragment_container, fragment, "home")
                .Commit();
            }

            if ((bool)Intent?.HasExtra("shortcut-data"))
            {
                using (var jsonTextReader = new Newtonsoft.Json.JsonTextReader(
                           new System.IO.StringReader(Intent.GetStringExtra("shortcut-data"))))
                {
                    var locData = LocationData.FromJson(jsonTextReader);

                    // Navigate to WeatherNowFragment
                    Fragment newFragment = WeatherNowFragment.NewInstance(locData);

                    SupportFragmentManager.BeginTransaction()
                    .Replace(Resource.Id.fragment_container, newFragment, "shortcut")
                    .Commit();

                    // Disable navigation
                    toggle.DrawerIndicatorEnabled = false;
                    drawer.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
                }
            }

            navigationView.SetCheckedItem(Resource.Id.nav_weathernow);

            Task.Run(Shortcuts.ShortcutCreator.UpdateShortcuts);
        }