aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/java/com/camilstaps/taize/MainActivity.java
diff options
context:
space:
mode:
authorCamil Staps2015-04-07 16:45:19 +0200
committerCamil Staps2015-04-07 16:45:19 +0200
commitc247f717759e0d56c94faa92c15ff0efd81f6610 (patch)
tree9a728f3e9771d69b2cbcef47baeb8ac2f6339f20 /app/src/main/java/com/camilstaps/taize/MainActivity.java
parentinitial commit (diff)
Better layout
Diffstat (limited to 'app/src/main/java/com/camilstaps/taize/MainActivity.java')
-rw-r--r--app/src/main/java/com/camilstaps/taize/MainActivity.java53
1 files changed, 41 insertions, 12 deletions
diff --git a/app/src/main/java/com/camilstaps/taize/MainActivity.java b/app/src/main/java/com/camilstaps/taize/MainActivity.java
index b3bf748..8382683 100644
--- a/app/src/main/java/com/camilstaps/taize/MainActivity.java
+++ b/app/src/main/java/com/camilstaps/taize/MainActivity.java
@@ -2,6 +2,8 @@ package com.camilstaps.taize;
import android.app.Activity;
import android.content.Intent;
+import android.content.SharedPreferences;
+import android.preference.PreferenceManager;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
@@ -15,6 +17,8 @@ import android.view.ViewGroup;
import android.support.v4.widget.DrawerLayout;
import android.widget.TextView;
+import com.camilstaps.common.NullListener;
+
public class MainActivity extends ActionBarActivity
implements NavigationDrawerFragment.NavigationDrawerCallbacks {
@@ -29,33 +33,58 @@ public class MainActivity extends ActionBarActivity
*/
private CharSequence mTitle;
- private String reading;
+ private SharedPreferences.OnSharedPreferenceChangeListener sharedPreferenceChangeListener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
- mNavigationDrawerFragment = (NavigationDrawerFragment)
- getSupportFragmentManager().findFragmentById(R.id.navigation_drawer);
+ mNavigationDrawerFragment = (NavigationDrawerFragment) getSupportFragmentManager().findFragmentById(R.id.navigation_drawer);
mTitle = getTitle();
// Set up the drawer.
- mNavigationDrawerFragment.setUp(
- R.id.navigation_drawer,
- (DrawerLayout) findViewById(R.id.drawer_layout));
+ mNavigationDrawerFragment.setUp(R.id.navigation_drawer, (DrawerLayout) findViewById(R.id.drawer_layout));
+
+ setupContent();
+
+ sharedPreferenceChangeListener = new SharedPreferences.OnSharedPreferenceChangeListener() {
+ @Override
+ public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
+ switch (key) {
+ case "dailyreading":
+ case "dailyreadingbible":
+ setupContent();
+ break;
+ }
+ }
+ };
+ PreferenceManager.getDefaultSharedPreferences(this).registerOnSharedPreferenceChangeListener(sharedPreferenceChangeListener);
}
@Override
- public void onSaveInstanceState(Bundle savedInstanceState) {
- super.onSaveInstanceState(savedInstanceState);
- savedInstanceState.putString("textview_dailyreading", ((TextView) findViewById(R.id.textDailyReading)).getText().toString());
+ public void onRestoreInstanceState(Bundle savedInstanceState) {
+ super.onRestoreInstanceState(savedInstanceState);
+ setupContent();
}
@Override
- public void onRestoreInstanceState(Bundle savedInstanceState) {
- super.onRestoreInstanceState(savedInstanceState);
- ((TextView) findViewById(R.id.textDailyReading)).setText(savedInstanceState.getString("textview_dailyreading"));
+ public void onResume() {
+ super.onResume();
+ setupContent();
+ }
+
+ protected void setupContent() {
+ setDailyReading();
+ setDailyReadingBibleText();
+ }
+
+ private void setDailyReading() {
+ ((TextView) findViewById(R.id.textDailyReading)).setText(PreferenceManager.getDefaultSharedPreferences(this).getString("dailyreading", "No daily reading found."));
+ }
+
+ private void setDailyReadingBibleText() {
+ ((TextView) findViewById(R.id.textDailyReadingBibleText)).setText(PreferenceManager.getDefaultSharedPreferences(this).getString("dailyreadingbible", "Could not fetch bible text."));
}
@Override