@Override protected void onResume() { super.onResume(); Log.d(LOG_TAG, "onResume()"); trackViewPagerPage(mViewPager.getCurrentItem()); }
@Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); if (mSpinnerAdapter.getCount() > 0) outState.putParcelableArrayList("chapters", mSpinnerAdapter.getAll()); if (mViewPagerAdapter.getSelectedChapter() != null) outState.putParcelable("selected_chapter", mViewPagerAdapter.getSelectedChapter()); }
@Override protected void onStart() { super.onStart(); Timber.d("onStart()"); if (mPreferences.getBoolean(Const.SETTINGS_FIRST_START, Const.SETTINGS_FIRST_START_DEFAULT)) { startActivityForResult( new Intent(this, FirstStartActivity.class), REQUEST_FIRST_START_WIZARD); } }
/** * Called when the activity is first created. * * @param savedInstanceState If the activity is being re-initialized after previously being shut * down then this Bundle contains the data it most recently supplied in * onSaveInstanceState(Bundle). <b>Note: Otherwise it is null.</b> */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Timber.i("onCreate"); setContentView(R.layout.activity_main); mClient = new GroupDirectory(); mLocationComparator = new ChapterComparator(mPreferences); mIndicator.setOnPageChangeListener(this); mViewPagerAdapter = new MyAdapter(this, getSupportFragmentManager()); mSpinnerAdapter = new ChapterAdapter(MainActivity.this, android.R.layout.simple_list_item_1); getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); getSupportActionBar().setListNavigationCallbacks(mSpinnerAdapter, MainActivity.this); mFetchChaptersTask = mClient.getDirectory( new Response.Listener<Directory>() { @Override public void onResponse(final Directory directory) { getSupportActionBar() .setListNavigationCallbacks(mSpinnerAdapter, MainActivity.this); App.getInstance() .getModelCache() .putAsync( "chapter_list", directory, DateTime.now().plusDays(1), new ModelCache.CachePutListener() { @Override public void onPutIntoCache() { ArrayList<Chapter> chapters = directory.getGroups(); initChapters(chapters); } }); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError volleyError) { Crouton.makeText( MainActivity.this, getString(R.string.fetch_chapters_failed), Style.ALERT) .show(); Timber.e("Could'nt fetch chapter list", volleyError); } }); if (savedInstanceState == null) { if (Utils.isOnline(this)) { App.getInstance() .getModelCache() .getAsync( "chapter_list", new ModelCache.CacheListener() { @Override public void onGet(Object item) { Directory directory = (Directory) item; initChapters(directory.getGroups()); } @Override public void onNotFound(String key) { mFetchChaptersTask.execute(); } }); } else { App.getInstance() .getModelCache() .getAsync( "chapter_list", false, new ModelCache.CacheListener() { @Override public void onGet(Object item) { Directory directory = (Directory) item; initChapters(directory.getGroups()); } @Override public void onNotFound(String key) { Crouton.makeText( MainActivity.this, getString(R.string.offline_alert), Style.ALERT) .show(); } }); } } else { if (savedInstanceState.containsKey("chapters")) { ArrayList<Chapter> chapters = savedInstanceState.getParcelableArrayList("chapters"); mSpinnerAdapter.clear(); mSpinnerAdapter.addAll(chapters); if (savedInstanceState.containsKey("selected_chapter")) { Chapter selectedChapter = savedInstanceState.getParcelable("selected_chapter"); selectChapter(selectedChapter); } else { mViewPagerAdapter.setSelectedChapter(chapters.get(0)); } mViewPager.setAdapter(mViewPagerAdapter); mIndicator.setViewPager(mViewPager); } else { mFetchChaptersTask.execute(); } } Intent intent = getIntent(); if (intent != null && intent.getAction() != null && intent.getAction().equals("finish_first_start")) { Timber.d("Completed FirstStartWizard"); if (mPreferences.getBoolean(Const.SETTINGS_SIGNED_IN, false)) { mFirstStart = true; } Chapter homeGdgd = getIntent().getParcelableExtra("selected_chapter"); getSupportActionBar().setSelectedNavigationItem(mSpinnerAdapter.getPosition(homeGdgd)); mViewPagerAdapter.setSelectedChapter(homeGdgd); } Time now = new Time(); now.setToNow(); if ((mPreferences.getInt(Const.SETTINGS_SEASONS_GREETINGS, now.year - 1) < now.year) && (now.yearDay >= 354 && now.yearDay <= 366)) { mPreferences.edit().putInt(Const.SETTINGS_SEASONS_GREETINGS, now.year).commit(); SeasonsGreetingsFragment seasonsGreetings = new SeasonsGreetingsFragment(); seasonsGreetings.show(getSupportFragmentManager(), "dialog"); } }
@Override protected void onPause() { super.onPause(); Timber.d("onPause()"); }
@Override protected void onActivityResult(int requestCode, int responseCode, Intent intent) { super.onActivityResult(requestCode, responseCode, intent); }
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.i(LOG_TAG, "onCreate"); setContentView(R.layout.activity_pulse); getSupportActionBar().setLogo(R.drawable.ic_logo_pulse); mClient = new GroupDirectory(); mIndicator.setOnPageChangeListener( new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int i, float v, int i2) {} @Override public void onPageSelected(int i) { Log.d(LOG_TAG, "onPageSelected()"); trackViewPagerPage(i); } @Override public void onPageScrollStateChanged(int i) {} }); mPulseTargets = new ArrayList<String>(); mViewPagerAdapter = new MyAdapter(this, getSupportFragmentManager()); mSpinnerAdapter = new ArrayAdapter<String>(PulseActivity.this, android.R.layout.simple_list_item_1); getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); getSupportActionBar().setListNavigationCallbacks(mSpinnerAdapter, PulseActivity.this); getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setHomeButtonEnabled(true); mFetchGlobalPulseTask = mClient.getPulse( new Response.Listener<Pulse>() { @Override public void onResponse(final Pulse pulse) { getSupportActionBar() .setListNavigationCallbacks(mSpinnerAdapter, PulseActivity.this); App.getInstance() .getModelCache() .putAsync( "pulse_global", pulse, DateTime.now().plusDays(1), new ModelCache.CachePutListener() { @Override public void onPutIntoCache() { mPulseTargets.addAll(pulse.keySet()); initSpinner(); } }); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError volleyError) { Crouton.makeText( PulseActivity.this, getString(R.string.fetch_chapters_failed), Style.ALERT) .show(); Log.e(LOG_TAG, "Could'nt fetch chapter list", volleyError); } }); App.getInstance() .getModelCache() .getAsync( "pulse_global", true, new ModelCache.CacheListener() { @Override public void onGet(Object item) { Pulse pulse = (Pulse) item; mPulseTargets.addAll(pulse.keySet()); initSpinner(); } @Override public void onNotFound(String key) { mFetchGlobalPulseTask.execute(); } }); }