#1856 - Adding Location FAB to TestApp with color toggle to show state

This commit is contained in:
Brad Leege
2015-08-10 17:32:26 -05:00
parent 9cd4a7ccb7
commit bfb44846c0
2 changed files with 22 additions and 32 deletions

View File

@@ -4,6 +4,7 @@ import android.graphics.Color;
import android.graphics.PointF;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.NavigationView;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
@@ -62,7 +63,7 @@ public class MainActivity extends AppCompatActivity {
private ArrayAdapter mSatelliteClassAdapter;
// Used for GPS
private MenuItem mGpsMenuItem;
private FloatingActionButton locationFAB;
// Used for Annotations
private boolean mIsAnnotationsOn = false;
@@ -143,6 +144,16 @@ public class MainActivity extends AppCompatActivity {
mMapFrameLayout = (FrameLayout) findViewById(R.id.layout_map);
locationFAB = (FloatingActionButton)findViewById(R.id.locationFAB);
locationFAB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Toggle GPS position updates
toggleGps(!mapView.isMyLocationEnabled());
updateMap();
}
});
/*
// Add the spinner to select class styles
mClassSpinner = (Spinner) findViewById(R.id.spinner_class);
@@ -220,22 +231,6 @@ public class MainActivity extends AppCompatActivity {
// Other events
//
/*
// Adds items to the action bar menu
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_main, menu);
mGpsMenuItem = menu.findItem(R.id.action_gps);
if (mapView.isMyLocationEnabled()) {
mGpsMenuItem.setIcon(R.drawable.ic_action_location_found);
} else {
mGpsMenuItem.setIcon(R.drawable.ic_action_location_searching);
}
return super.onCreateOptionsMenu(menu);
}
*/
// Called when pressing action bar items
@Override
public boolean onOptionsItemSelected(MenuItem item) {
@@ -340,16 +335,12 @@ public class MainActivity extends AppCompatActivity {
if (enableGps) {
if (!mapView.isMyLocationEnabled()) {
mapView.setMyLocationEnabled(enableGps);
if (mGpsMenuItem != null) {
mGpsMenuItem.setIcon(R.drawable.ic_action_location_found);
}
locationFAB.setColorFilter(getResources().getColor(R.color.primary));
}
} else {
if (mapView.isMyLocationEnabled()) {
mapView.setMyLocationEnabled(enableGps);
if (mGpsMenuItem != null) {
mGpsMenuItem.setIcon(R.drawable.ic_action_location_searching);
}
locationFAB.setColorFilter(Color.TRANSPARENT);
}
}
}

View File

@@ -65,15 +65,14 @@
</FrameLayout>
<!--
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:layout_margin="@dimen/fab_margin"
/>
-->
<android.support.design.widget.FloatingActionButton
android:id="@+id/locationFAB"
android:src="@drawable/ic_my_location_white_24dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:layout_margin="@dimen/fab_margin"
/>
</android.support.design.widget.CoordinatorLayout>