diff --git a/MyTracks/src/com/google/android/apps/mytracks/AbstractMyTracksActivity.java b/MyTracks/src/com/google/android/apps/mytracks/AbstractMyTracksActivity.java index b899016bc..5759e3d16 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/AbstractMyTracksActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/AbstractMyTracksActivity.java @@ -28,14 +28,20 @@ import android.view.MenuItem; * * @author Jimmy Shih */ -public class AbstractMyTracksActivity extends FragmentActivity { +public abstract class AbstractMyTracksActivity extends FragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setVolumeControlStream(TextToSpeech.Engine.DEFAULT_STREAM); + setContentView(getLayoutResId()); ApiAdapterFactory.getApiAdapter().configureActionBarHomeAsUp(this); } + + /** + * Gets the layout resource id. + */ + protected abstract int getLayoutResId(); @Override public boolean onOptionsItemSelected(MenuItem item) { diff --git a/MyTracks/src/com/google/android/apps/mytracks/AggregatedStatsActivity.java b/MyTracks/src/com/google/android/apps/mytracks/AggregatedStatsActivity.java index 872175807..6acb6eae3 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/AggregatedStatsActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/AggregatedStatsActivity.java @@ -36,11 +36,15 @@ public class AggregatedStatsActivity extends AbstractMyTracksActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.aggregated_stats); StatsUtils.setTripStatisticsValues(this, getTripStatistics()); StatsUtils.setLocationValues(this, null, false); } + @Override + protected int getLayoutResId() { + return R.layout.aggregated_stats; + } + /** * Gets the aggregated trip statistics for all the recorded tracks or null if * there is no track. diff --git a/MyTracks/src/com/google/android/apps/mytracks/HelpActivity.java b/MyTracks/src/com/google/android/apps/mytracks/HelpActivity.java index cf17fbf2c..71c9f8483 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/HelpActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/HelpActivity.java @@ -35,7 +35,6 @@ public class HelpActivity extends AbstractMyTracksActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.help); TextView mapsPublicUnlisted = (TextView) findViewById(R.id.help_maps_public_unlisted_answer); mapsPublicUnlisted.setText(StringUtils.getHtml( @@ -58,4 +57,9 @@ public class HelpActivity extends AbstractMyTracksActivity { } }); } + + @Override + protected int getLayoutResId() { + return R.layout.help; + } } diff --git a/MyTracks/src/com/google/android/apps/mytracks/MarkerDetailActivity.java b/MyTracks/src/com/google/android/apps/mytracks/MarkerDetailActivity.java index 35be611be..f70e74444 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/MarkerDetailActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/MarkerDetailActivity.java @@ -51,7 +51,6 @@ public class MarkerDetailActivity extends AbstractMyTracksActivity { @Override protected void onCreate(Bundle bundle) { super.onCreate(bundle); - setContentView(R.layout.marker_detail); markerId = getIntent().getLongExtra(EXTRA_MARKER_ID, -1L); if (markerId == -1L) { @@ -64,6 +63,11 @@ public class MarkerDetailActivity extends AbstractMyTracksActivity { statisticsSection = findViewById(R.id.marker_detail_statistics_section); } + @Override + protected int getLayoutResId() { + return R.layout.marker_detail; + } + @Override protected void onResume() { super.onResume(); diff --git a/MyTracks/src/com/google/android/apps/mytracks/MarkerEditActivity.java b/MyTracks/src/com/google/android/apps/mytracks/MarkerEditActivity.java index 1026c1660..c1045f396 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/MarkerEditActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/MarkerEditActivity.java @@ -62,7 +62,6 @@ public class MarkerEditActivity extends AbstractMyTracksActivity { @Override protected void onCreate(Bundle bundle) { super.onCreate(bundle); - setContentView(R.layout.marker_edit); trackId = getIntent().getLongExtra(EXTRA_TRACK_ID, -1L); markerId = getIntent().getLongExtra(EXTRA_MARKER_ID, -1L); @@ -91,6 +90,11 @@ public class MarkerEditActivity extends AbstractMyTracksActivity { updateUiByMarkerId(); } + @Override + protected int getLayoutResId() { + return R.layout.marker_edit; + } + /** * Updates the UI based on the marker id. */ diff --git a/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java b/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java index 970d177e5..95f88a218 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java @@ -113,7 +113,6 @@ public class MarkerListActivity extends AbstractMyTracksActivity { } setDefaultKeyMode(DEFAULT_KEYS_SEARCH_LOCAL); - setContentView(R.layout.marker_list); getSharedPreferences(Constants.SETTINGS_NAME, Context.MODE_PRIVATE) .registerOnSharedPreferenceChangeListener(sharedPreferenceChangeListener); @@ -179,6 +178,11 @@ public class MarkerListActivity extends AbstractMyTracksActivity { }); } + @Override + protected int getLayoutResId() { + return R.layout.marker_list; + } + @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.marker_list, menu); diff --git a/MyTracks/src/com/google/android/apps/mytracks/SearchListActivity.java b/MyTracks/src/com/google/android/apps/mytracks/SearchListActivity.java index aa5412a80..b6f467d1f 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/SearchListActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/SearchListActivity.java @@ -137,7 +137,6 @@ public class SearchListActivity extends AbstractMyTracksActivity implements Dele protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setDefaultKeyMode(DEFAULT_KEYS_SEARCH_LOCAL); - setContentView(R.layout.search_list); trackRecordingServiceConnection = new TrackRecordingServiceConnection(this, null); myTracksProviderUtils = MyTracksProviderUtils.Factory.get(this); @@ -202,6 +201,11 @@ public class SearchListActivity extends AbstractMyTracksActivity implements Dele handleIntent(getIntent()); } + @Override + protected int getLayoutResId() { + return R.layout.search_list; + } + @Override protected void onResume() { super.onResume(); diff --git a/MyTracks/src/com/google/android/apps/mytracks/SensorStateActivity.java b/MyTracks/src/com/google/android/apps/mytracks/SensorStateActivity.java index f16e5400f..60f2ef71d 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/SensorStateActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/SensorStateActivity.java @@ -92,10 +92,14 @@ public class SensorStateActivity extends AbstractMyTracksActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.sensor_state); trackRecordingServiceConnection = new TrackRecordingServiceConnection(this, null); } + @Override + protected int getLayoutResId() { + return R.layout.sensor_state; + } + @Override protected void onResume() { super.onResume(); diff --git a/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java b/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java index 3d67dc100..f07808bbc 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java @@ -192,7 +192,6 @@ public class TrackDetailActivity extends AbstractMyTracksActivity implements Del super.onCreate(savedInstanceState); handleIntent(getIntent()); ApiAdapterFactory.getApiAdapter().hideTitle(this); - setContentView(R.layout.track_detail); SharedPreferences sharedPreferences = getSharedPreferences( Constants.SETTINGS_NAME, Context.MODE_PRIVATE); @@ -226,6 +225,11 @@ public class TrackDetailActivity extends AbstractMyTracksActivity implements Del showMarker(); } + @Override + protected int getLayoutResId() { + return R.layout.track_detail; + } + @Override protected void onStart() { super.onStart(); diff --git a/MyTracks/src/com/google/android/apps/mytracks/TrackEditActivity.java b/MyTracks/src/com/google/android/apps/mytracks/TrackEditActivity.java index 1dc6fafcb..7ef48c44e 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/TrackEditActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/TrackEditActivity.java @@ -57,7 +57,6 @@ public class TrackEditActivity extends AbstractMyTracksActivity { @Override protected void onCreate(Bundle bundle) { super.onCreate(bundle); - setContentView(R.layout.track_edit); trackId = getIntent().getLongExtra(EXTRA_TRACK_ID, -1L); if (trackId == -1L) { @@ -143,6 +142,11 @@ public class TrackEditActivity extends AbstractMyTracksActivity { } } + @Override + protected int getLayoutResId() { + return R.layout.track_edit; + } + /** * Sets the activity type icon. *