[android] #4396 - fixed test activity tracking settings modes, Deprecated old configuration of tracking settings and introduced more flexible configuration.

This commit is contained in:
Tobrun
2016-04-22 14:36:05 +02:00
parent 452c892dab
commit fe7ebb0966
4 changed files with 32 additions and 7 deletions

View File

@@ -109,8 +109,19 @@ public class TrackingSettings {
* Set the dismissal of the tracking modes if a gesture occurs.
*
* @param dismissTrackingOnGesture True to dismiss the tracking modes.
* @deprecated use @link #setDismissAllTrackingOnGesture instead
*/
@Deprecated
public void setDismissTrackingOnGesture(boolean dismissTrackingOnGesture) {
setDismissAllTrackingOnGesture(dismissTrackingOnGesture);
}
/**
* Set the dismissal of the tracking modes if a gesture occurs.
*
* @param dismissTrackingOnGesture True to dismiss the tracking modes.
*/
public void setDismissAllTrackingOnGesture(boolean dismissTrackingOnGesture) {
dismissLocationTrackingOnGesture = dismissTrackingOnGesture;
dismissBearingTrackingOnGesture = dismissTrackingOnGesture;
validateGesturesForTrackingModes();
@@ -171,7 +182,7 @@ public class TrackingSettings {
*
* @return True if location tracking is disabled.
*/
public boolean isLocationTrackingDisabled(){
public boolean isLocationTrackingDisabled() {
return myLocationTrackingMode == MyLocationTracking.TRACKING_NONE;
}
}

View File

@@ -57,8 +57,9 @@ public class MyLocationTrackingModeActivity extends AppCompatActivity implements
public void onMapReady(@NonNull MapboxMap mapboxMap) {
mMapboxMap = mapboxMap;
MyLocationViewSettings locationViewSettings = mapboxMap.getMyLocationViewSettings();
locationViewSettings.setPadding(0, (int) getResources().getDimension(R.dimen.locationview_padding_top), 0, 0);
// disable dismissal when a gesture occurs
mMapboxMap.getTrackingSettings().setDismissTrackingOnGesture(false);
mMapboxMap.getTrackingSettings().setDismissBearingTrackingOnGesture(false);
mapboxMap.setOnMyLocationChangeListener(MyLocationTrackingModeActivity.this);
@@ -209,16 +210,22 @@ public class MyLocationTrackingModeActivity extends AppCompatActivity implements
@Override
public boolean onOptionsItemSelected(MenuItem item) {
boolean state;
switch (item.getItemId()) {
case android.R.id.home:
onBackPressed();
return true;
case R.id.action_toggle_dismissible_tracking:
boolean state = !item.isChecked();
mMapboxMap.getTrackingSettings().setDismissTrackingOnGesture(state);
state = !item.isChecked();
mMapboxMap.getTrackingSettings().setDismissLocationTrackingOnGesture(state);
Toast.makeText(this, "Dismiss tracking mode on gesture = " + state, Toast.LENGTH_SHORT).show();
item.setChecked(state);
return true;
case R.id.action_toggle_dismissible_bearing:
state = !item.isChecked();
mMapboxMap.getTrackingSettings().setDismissBearingTrackingOnGesture(state);
Toast.makeText(this, "Dismiss bearing mode on gesture = " + state, Toast.LENGTH_SHORT).show();
item.setChecked(state);
default:
return super.onOptionsItemSelected(item);
}

View File

@@ -6,9 +6,15 @@
<item
android:id="@+id/action_toggle_dismissible_tracking"
android:checkable="true"
android:checked="true"
android:checked="false"
android:title="@string/menuitem_title_tracking_mode_dismiss_on_gesture"
app:showAsAction="never" />
<item
android:id="@+id/action_toggle_dismissible_bearing"
android:checkable="true"
android:checked="false"
android:title="@string/menuitem_title_bearing_mode_dismiss_on_gesture"
app:showAsAction="never" />
</group>
</menu>

View File

@@ -73,7 +73,8 @@
<string name="description_doublemap">2 maps in a view hierarchy</string>
<string name="menuitem_title_concurrent_infowindow">Concurrent Open InfoWindows</string>r
<string name="menuitem_title_tracking_mode_dismiss_on_gesture">Dismiss on Gesture</string>r
<string name="menuitem_title_tracking_mode_dismiss_on_gesture">Dismiss location tracking on gesture</string>
<string name="menuitem_title_bearing_mode_dismiss_on_gesture">Dismiss bearing tracking on gesture</string>
<string name="category">category</string>
<string name="category_annotation">Annotation</string>