diff options
author | Alexander Lucas <alexlucas@google.com> | 2014-03-07 13:34:45 -0800 |
---|---|---|
committer | Alexander Lucas <alexlucas@google.com> | 2014-03-10 09:21:36 -0700 |
commit | a780ba4b15cbe69e7ad74c34c21ccef5e8cdce23 (patch) | |
tree | 9cf7ce9e69b696027d16f754ce40eb0640d05af0 /samples/browseable/AdvancedImmersiveMode/src/com.example.android.advancedimmersivemode/MainActivity.java | |
parent | 7cd4524c3bc377aa4267c7014c126e0526b3c703 (diff) | |
download | android_development-a780ba4b15cbe69e7ad74c34c21ccef5e8cdce23.tar.gz android_development-a780ba4b15cbe69e7ad74c34c21ccef5e8cdce23.tar.bz2 android_development-a780ba4b15cbe69e7ad74c34c21ccef5e8cdce23.zip |
Adding browsable prebuilt samples for march push
Change-Id: I952db10d9c9acb4940db08a07789347ea2effe4d
Diffstat (limited to 'samples/browseable/AdvancedImmersiveMode/src/com.example.android.advancedimmersivemode/MainActivity.java')
-rw-r--r-- | samples/browseable/AdvancedImmersiveMode/src/com.example.android.advancedimmersivemode/MainActivity.java | 48 |
1 files changed, 39 insertions, 9 deletions
diff --git a/samples/browseable/AdvancedImmersiveMode/src/com.example.android.advancedimmersivemode/MainActivity.java b/samples/browseable/AdvancedImmersiveMode/src/com.example.android.advancedimmersivemode/MainActivity.java index 0ebe8784f..e32355760 100644 --- a/samples/browseable/AdvancedImmersiveMode/src/com.example.android.advancedimmersivemode/MainActivity.java +++ b/samples/browseable/AdvancedImmersiveMode/src/com.example.android.advancedimmersivemode/MainActivity.java @@ -22,6 +22,8 @@ package com.example.android.advancedimmersivemode; import android.os.Bundle; import android.support.v4.app.FragmentTransaction; import android.view.Menu; +import android.view.MenuItem; +import android.widget.ViewAnimator; import com.example.android.common.activities.SampleActivityBase; import com.example.android.common.logger.Log; @@ -30,26 +32,28 @@ import com.example.android.common.logger.LogWrapper; import com.example.android.common.logger.MessageOnlyLogFilter; /** - * A simple launcher activity containing a summary sample description - * and a few action bar buttons. + * A simple launcher activity containing a summary sample description, sample log and a custom + * {@link android.support.v4.app.Fragment} which can display a view. + * <p> + * For devices with displays with a width of 720dp or greater, the sample log is always visible, + * on other devices it's visibility is controlled by an item on the Action Bar. */ public class MainActivity extends SampleActivityBase { public static final String TAG = "MainActivity"; - public static final String FRAGTAG = "AdvancedImmersiveModeFragment"; + // Whether the Log Fragment is currently shown + private boolean mLogShown; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); - if (getSupportFragmentManager().findFragmentByTag(FRAGTAG) == null ) { - FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); - AdvancedImmersiveModeFragment fragment = new AdvancedImmersiveModeFragment(); - transaction.add(fragment, FRAGTAG); - transaction.commit(); - } + FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); + AdvancedImmersiveModeFragment fragment = new AdvancedImmersiveModeFragment(); + transaction.replace(R.id.sample_content_fragment, fragment); + transaction.commit(); } @Override @@ -58,6 +62,32 @@ public class MainActivity extends SampleActivityBase { return true; } + @Override + public boolean onPrepareOptionsMenu(Menu menu) { + MenuItem logToggle = menu.findItem(R.id.menu_toggle_log); + logToggle.setVisible(findViewById(R.id.sample_output) instanceof ViewAnimator); + logToggle.setTitle(mLogShown ? R.string.sample_hide_log : R.string.sample_show_log); + + return super.onPrepareOptionsMenu(menu); + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch(item.getItemId()) { + case R.id.menu_toggle_log: + mLogShown = !mLogShown; + ViewAnimator output = (ViewAnimator) findViewById(R.id.sample_output); + if (mLogShown) { + output.setDisplayedChild(1); + } else { + output.setDisplayedChild(0); + } + supportInvalidateOptionsMenu(); + return true; + } + return super.onOptionsItemSelected(item); + } + /** Create a chain of targets that will receive log data */ @Override public void initializeLogging() { |