#1856 - Enabling and setting clickable state for features in Navigation Drawer menu

This commit is contained in:
Brad Leege
2015-08-12 11:13:33 -05:00
parent 91cf989d8c
commit f5a95e18d9
3 changed files with 12 additions and 6 deletions

View File

@@ -7,7 +7,6 @@ import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.NavigationView;
import android.support.design.widget.Snackbar;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBar;
@@ -163,6 +162,11 @@ public class MainActivity extends AppCompatActivity {
R.array.outdoors_class_list, android.R.layout.simple_spinner_dropdown_item);
*/
// Set default UI state
navigationView.getMenu().findItem(R.id.action_compass).setChecked(mapView.isCompassEnabled());
navigationView.getMenu().findItem(R.id.action_debug).setChecked(mapView.isDebugActive());
navigationView.getMenu().findItem(R.id.action_markers).setChecked(mIsAnnotationsOn);
if (savedInstanceState != null) {
mapView.setMyLocationEnabled(savedInstanceState.getBoolean(STATE_IS_GPS_ON, false));
}
@@ -250,7 +254,6 @@ public class MainActivity extends AppCompatActivity {
new NavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(MenuItem menuItem) {
menuItem.setChecked(true);
mDrawerLayout.closeDrawers();
// Respond To Selection
@@ -260,6 +263,8 @@ public class MainActivity extends AppCompatActivity {
// Toggle debug mode
mapView.toggleDebug();
menuItem.setChecked(mapView.isDebugActive());
// Show the FPS counter
if (mapView.isDebugActive()) {
mFpsTextView.setVisibility(View.VISIBLE);
@@ -272,11 +277,13 @@ public class MainActivity extends AppCompatActivity {
case R.id.action_markers:
// Toggle markers
toggleAnnotations(!mIsAnnotationsOn);
menuItem.setChecked(mIsAnnotationsOn);
break;
case R.id.action_compass:
// Toggle compass
mapView.setCompassEnabled(!mapView.isCompassEnabled());
menuItem.setChecked(mapView.isCompassEnabled());
break;
/*

View File

@@ -5,15 +5,18 @@
android:id="@+id/action_debug"
android:icon="@drawable/ic_action_about"
android:title="@string/action_debug"
android:checkable="true"
/>
<item
android:id="@+id/action_markers"
android:icon="@android:drawable/ic_menu_myplaces"
android:title="@string/action_point_annotations"
android:checkable="true"
/>
<item android:id="@+id/action_compass"
android:icon="@drawable/ic_explore_white_24dp"
android:title="@string/action_compass"
android:checkable="true"
/>
<!--