List of usage examples for android.view View SYSTEM_UI_FLAG_IMMERSIVE_STICKY
int SYSTEM_UI_FLAG_IMMERSIVE_STICKY
To view the source code for android.view View SYSTEM_UI_FLAG_IMMERSIVE_STICKY.
Click Source Link
From source file:com.example.android.advancedimmersivemode.AdvancedImmersiveModeFragment.java
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle state) { final View flagsView = inflater.inflate(R.layout.fragment_flags, container, false); mLowProfileCheckBox = (CheckBox) flagsView.findViewById(R.id.flag_enable_lowprof); mHideNavCheckbox = (CheckBox) flagsView.findViewById(R.id.flag_hide_navbar); mHideStatusBarCheckBox = (CheckBox) flagsView.findViewById(R.id.flag_hide_statbar); mImmersiveModeCheckBox = (CheckBox) flagsView.findViewById(R.id.flag_enable_immersive); mImmersiveModeStickyCheckBox = (CheckBox) flagsView.findViewById(R.id.flag_enable_immersive_sticky); Button toggleFlagsButton = (Button) flagsView.findViewById(R.id.btn_changeFlags); toggleFlagsButton.setOnClickListener(new View.OnClickListener() { @Override//from w ww.j av a 2 s . c om public void onClick(View view) { toggleUiFlags(); } }); Button presetsImmersiveModeButton = (Button) flagsView.findViewById(R.id.btn_immersive); presetsImmersiveModeButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // BEGIN_INCLUDE(immersive_presets) // For immersive mode, the FULLSCREEN, HIDE_HAVIGATION and IMMERSIVE // flags should be set (you can use IMMERSIVE_STICKY instead of IMMERSIVE // as appropriate for your app). The LOW_PROFILE flag should be cleared. // Immersive mode is primarily for situations where the user will be // interacting with the screen, like games or reading books. int uiOptions = flagsView.getSystemUiVisibility(); uiOptions &= ~View.SYSTEM_UI_FLAG_LOW_PROFILE; uiOptions |= View.SYSTEM_UI_FLAG_FULLSCREEN; uiOptions |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION; uiOptions |= View.SYSTEM_UI_FLAG_IMMERSIVE; uiOptions &= ~View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; flagsView.setSystemUiVisibility(uiOptions); // END_INCLUDE(immersive_presets) dumpFlagStateToLog(uiOptions); // The below code just updates the checkboxes to reflect which flags have been set. mLowProfileCheckBox.setChecked(false); mHideNavCheckbox.setChecked(true); mHideStatusBarCheckBox.setChecked(true); mImmersiveModeCheckBox.setChecked(true); mImmersiveModeStickyCheckBox.setChecked(false); } }); Button presetsLeanbackModeButton = (Button) flagsView.findViewById(R.id.btn_leanback); presetsLeanbackModeButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // BEGIN_INCLUDE(leanback_presets) // For leanback mode, only the HIDE_NAVE and HIDE_STATUSBAR flags // should be checked. In this case IMMERSIVE should *not* be set, // since this mode is left as soon as the user touches the screen. int uiOptions = flagsView.getSystemUiVisibility(); uiOptions &= ~View.SYSTEM_UI_FLAG_LOW_PROFILE; uiOptions |= View.SYSTEM_UI_FLAG_FULLSCREEN; uiOptions |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION; uiOptions &= ~View.SYSTEM_UI_FLAG_IMMERSIVE; uiOptions &= ~View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; flagsView.setSystemUiVisibility(uiOptions); // END_INCLUDE(leanback_presets) dumpFlagStateToLog(uiOptions); // The below code just updates the checkboxes to reflect which flags have been set. mLowProfileCheckBox.setChecked(false); mHideNavCheckbox.setChecked(true); mHideStatusBarCheckBox.setChecked(true); mImmersiveModeCheckBox.setChecked(false); mImmersiveModeStickyCheckBox.setChecked(false); } }); // Setting these flags makes the content appear under the navigation // bars, so that showing/hiding the nav bars doesn't resize the content // window, which can be jarring. int uiOptions = flagsView.getSystemUiVisibility(); uiOptions |= View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION; uiOptions |= View.SYSTEM_UI_FLAG_LAYOUT_STABLE; uiOptions |= View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN; flagsView.setSystemUiVisibility(uiOptions); return flagsView; }
From source file:com.avolatile.randomdaily.IntroductionActivity.java
@Override protected void onResume() { /* The following code will enable immersive mode for the introduction screen * for devices running on Android 3.0 Honeycomb or higher. This will effectively * enable immersive mode all of the app's instances as the app is only compatible * with devices running on Android 4.1 Jelly Bean or higher */ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { View decorView = getWindow().getDecorView(); decorView.setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); }//from ww w.j av a 2s. c o m super.onResume(); }
From source file:info.ipeanut.googletrainingcoursedemos.advancedimmersivemode.AdvancedImmersiveModeFragment.java
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle state) { final View flagsView = inflater.inflate(R.layout.fragment_flags, container, false); mLowProfileCheckBox = (CheckBox) flagsView.findViewById(R.id.flag_enable_lowprof); mHideNavCheckbox = (CheckBox) flagsView.findViewById(R.id.flag_hide_navbar); mHideStatusBarCheckBox = (CheckBox) flagsView.findViewById(R.id.flag_hide_statbar); mImmersiveModeCheckBox = (CheckBox) flagsView.findViewById(R.id.flag_enable_immersive); mImmersiveModeStickyCheckBox = (CheckBox) flagsView.findViewById(R.id.flag_enable_immersive_sticky); Button toggleFlagsButton = (Button) flagsView.findViewById(R.id.btn_changeFlags); toggleFlagsButton.setOnClickListener(new View.OnClickListener() { @Override/*from ww w .j a v a 2 s .c o m*/ public void onClick(View view) { toggleUiFlags(); } }); Button presetsImmersiveModeButton = (Button) flagsView.findViewById(R.id.btn_immersive); presetsImmersiveModeButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // For immersive mode, the FULLSCREEN, HIDE_HAVIGATION and IMMERSIVE // flags should be set (you can use IMMERSIVE_STICKY instead of IMMERSIVE // as appropriate for your app). The LOW_PROFILE flag should be cleared. // Immersive mode is primarily for situations where the user will be // interacting with the screen, like games or reading books. int uiOptions = flagsView.getSystemUiVisibility(); uiOptions &= ~View.SYSTEM_UI_FLAG_LOW_PROFILE; uiOptions |= View.SYSTEM_UI_FLAG_FULLSCREEN; uiOptions |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION; uiOptions |= View.SYSTEM_UI_FLAG_IMMERSIVE; uiOptions &= ~View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; flagsView.setSystemUiVisibility(uiOptions); dumpFlagStateToLog(uiOptions); // The below code just updates the checkboxes to reflect which flags have been set. mLowProfileCheckBox.setChecked(false); mHideNavCheckbox.setChecked(true); mHideStatusBarCheckBox.setChecked(true); mImmersiveModeCheckBox.setChecked(true); mImmersiveModeStickyCheckBox.setChecked(false); } }); Button presetsLeanbackModeButton = (Button) flagsView.findViewById(R.id.btn_leanback); presetsLeanbackModeButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // For leanback mode, only the HIDE_NAVE and HIDE_STATUSBAR flags // should be checked. In this case IMMERSIVE should *not* be set, // since this mode is left as soon as the user touches the screen. int uiOptions = flagsView.getSystemUiVisibility(); uiOptions &= ~View.SYSTEM_UI_FLAG_LOW_PROFILE; uiOptions |= View.SYSTEM_UI_FLAG_FULLSCREEN; uiOptions |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION; uiOptions &= ~View.SYSTEM_UI_FLAG_IMMERSIVE; uiOptions &= ~View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; flagsView.setSystemUiVisibility(uiOptions); dumpFlagStateToLog(uiOptions); // The below code just updates the checkboxes to reflect which flags have been set. mLowProfileCheckBox.setChecked(false); mHideNavCheckbox.setChecked(true); mHideStatusBarCheckBox.setChecked(true); mImmersiveModeCheckBox.setChecked(false); mImmersiveModeStickyCheckBox.setChecked(false); } }); // Setting these flags makes the content appear under the navigation // bars, so that showing/hiding the nav bars doesn't resize the content // window, which can be jarring. int uiOptions = flagsView.getSystemUiVisibility(); uiOptions |= View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION; uiOptions |= View.SYSTEM_UI_FLAG_LAYOUT_STABLE; uiOptions |= View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN; flagsView.setSystemUiVisibility(uiOptions); return flagsView; }
From source file:com.cranberrygame.phonegap.plugin.NavigationBar.java
@TargetApi(Build.VERSION_CODES.HONEYCOMB) private void _setUp(boolean autoHideNavigationBar) { if (autoHideNavigationBar) { Activity activity = cordova.getActivity(); //http://stackoverflow.com/questions/21164836/immersive-mode-navigation-becomes-sticky-after-volume-press-or-minimise-restore //http://www.youtube.com/watch?v=Xw9TIS_JsPM //https://developer.android.com/training/system-ui/status.html activity.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION// | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION //| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN //| View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); final CordovaInterface cordova_final = cordova; //http://stackoverflow.com/questions/11762306/listen-for-first-touchevent-when-using-system-ui-flag-hide-navigation //http://stackoverflow.com/questions/15103339/android-full-screen-modeics-first-touch-shows-the-navigation-bar //http://developer.android.com/reference/android/view/View.OnSystemUiVisibilityChangeListener.html webView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() { @Override//from w w w . jav a 2 s. co m public void onSystemUiVisibilityChange(int vis) { if (vis == 0) { //http://stackoverflow.com/questions/3072173/how-to-call-a-method-after-a-delay-in-android Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override public void run() { Activity activity = cordova_final.getActivity(); activity.getWindow().getDecorView() .setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION// | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION //| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN //| View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); } }, 3000);//after ms } } }); } }
From source file:com.cranberrygame.cordova.plugin.navigationbar.NavigationBar.java
@TargetApi(Build.VERSION_CODES.HONEYCOMB) private void _setUp(boolean autoHideNavigationBar) { if (autoHideNavigationBar) { Activity activity = cordova.getActivity(); //http://stackoverflow.com/questions/21164836/immersive-mode-navigation-becomes-sticky-after-volume-press-or-minimise-restore //http://www.youtube.com/watch?v=Xw9TIS_JsPM //https://developer.android.com/training/system-ui/status.html activity.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION// | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION //| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN //| View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); final CordovaInterface cordova_final = cordova; //http://stackoverflow.com/questions/11762306/listen-for-first-touchevent-when-using-system-ui-flag-hide-navigation //http://stackoverflow.com/questions/15103339/android-full-screen-modeics-first-touch-shows-the-navigation-bar //http://developer.android.com/reference/android/view/View.OnSystemUiVisibilityChangeListener.html //webView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener(){//cordova5 build error getView(webView).setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {//fixed cordova5 build error @Override/*from ww w . j a v a2 s . com*/ public void onSystemUiVisibilityChange(int vis) { if (vis == 0) { //http://stackoverflow.com/questions/3072173/how-to-call-a-method-after-a-delay-in-android Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override public void run() { Activity activity = cordova_final.getActivity(); activity.getWindow().getDecorView() .setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION// | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION //| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN //| View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); } }, 3000);//after ms } } }); } }
From source file:com.pimp.instincts.activities.GalleryActivity.java
@Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); View decorView = getWindow().getDecorView(); if (hasFocus) { decorView.setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); }// w ww . jav a 2 s . c om }
From source file:de.lespace.apprtc.CallActivity.java
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Thread.setDefaultUncaughtExceptionHandler(new UnhandledExceptionHandler(this)); // Set window styles for fullscreen-window size. Needs to be done before // adding content. requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().addFlags(/*from w w w . ja v a 2 s. c om*/ LayoutParams.FLAG_FULLSCREEN | LayoutParams.FLAG_KEEP_SCREEN_ON | LayoutParams.FLAG_DISMISS_KEYGUARD | LayoutParams.FLAG_SHOW_WHEN_LOCKED | LayoutParams.FLAG_TURN_SCREEN_ON); getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); setContentView(R.layout.activity_call); iceConnected = false; scalingType = ScalingType.SCALE_ASPECT_FILL; callFragment = new CallFragment(); hudFragment = new HudFragment(); // Create UI controls. localRender = (SurfaceViewRenderer) findViewById(R.id.local_video_view); remoteRender = (SurfaceViewRenderer) findViewById(R.id.remote_video_view); screenRender = (SurfaceViewRenderer) findViewById(R.id.remote_screen_view); localRenderLayout = (PercentFrameLayout) findViewById(R.id.local_video_layout); remoteRenderLayout = (PercentFrameLayout) findViewById(R.id.remote_video_layout); screenRenderLayout = (PercentFrameLayout) findViewById(R.id.remote_screen_layout); // Show/hide call control fragment on view click. View.OnClickListener listener = new View.OnClickListener() { @Override public void onClick(View view) { toggleCallControlFragmentVisibility(); } }; localRender.setOnClickListener(listener); remoteRender.setOnClickListener(listener); screenRender.setOnClickListener(listener); //screensharing // Create video renderers. rootEglBase = EglBase.create(); localRender.init(rootEglBase.getEglBaseContext(), null); remoteRender.init(rootEglBase.getEglBaseContext(), null); screenRender.init(rootEglBase.getEglBaseContext(), null); localRender.setZOrderMediaOverlay(true); screenRender.setZOrderMediaOverlay(true); updateVideoView(); setResult(RESULT_CANCELED); if (!broadcastIsRegistered) { registerReceiver(broadcast_reciever, new IntentFilter("finish_CallActivity")); registerReceiver(broadcast_reciever, new IntentFilter("finish_screensharing")); broadcastIsRegistered = true; } callFragment = new CallFragment(); hudFragment = new HudFragment(); // Send intent arguments to fragments. callFragment.setArguments(getIntent().getExtras()); hudFragment.setArguments(getIntent().getExtras()); // Activate call and HUD fragments and start the call. FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.add(R.id.call_fragment_container, callFragment); ft.add(R.id.hud_fragment_container, hudFragment); ft.commit(); // For command line execution run connection for <runTimeMs> and exit. if (commandLineRun && runTimeMs > 0) { (new Handler()).postDelayed(new Runnable() { @Override public void run() { disconnect(false); } }, runTimeMs); } // Create and audio manager that will take care of audio routing, // audio modes, audio device enumeration etc. audioManager = AppRTCAudioManager.create(this, new Runnable() { // This method will be called each time the audio state (number and // type of devices) has been changed. @Override public void run() { onAudioManagerChangedState(); } }); // Store existing audio settings and change audio mode to // MODE_IN_COMMUNICATION for best possible VoIP performance. Log.d(TAG, "Initializing the audio manager..."); audioManager.init(); peerConnectionClient = PeerConnectionClient.getInstance(true); peerConnectionClient.createPeerConnectionFactory(CallActivity.this, peerConnectionParameters, this); peerConnectionClient.createPeerConnection(rootEglBase.getEglBaseContext(), localRender, remoteRender, screenRender, roomConnectionParameters.initiator); logAndToast("Creating OFFER..."); // Create offer. Offer SDP will be sent to answering client in // PeerConnectionEvents.onLocalDescription event. peerConnectionClient.createOffer(); }
From source file:org.andstatus.app.MyActivity.java
/** * Sets or Toggles fullscreen mode//from w w w .j av a 2 s. co m * REQUIRE: android:configChanges="orientation|screenSize" * Based on http://stackoverflow.com/a/30224178/297710 * On Immersive mode: https://developer.android.com/training/system-ui/immersive.html */ public void toggleFullscreen(TriState fullScreenIn) { int uiOptions = getWindow().getDecorView().getSystemUiVisibility(); int uiOptionsNew = uiOptions; boolean fullscreenNew = ((uiOptions & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0); ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { fullscreenNew = actionBar.isShowing(); } fullscreenNew = fullScreenIn.toBoolean(fullscreenNew); if (actionBar != null) { if (fullscreenNew) { actionBar.hide(); } else { actionBar.show(); } } if (fullscreenNew) { if (Build.VERSION.SDK_INT >= 14) { uiOptionsNew |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION; } if (Build.VERSION.SDK_INT >= 16) { uiOptionsNew |= View.SYSTEM_UI_FLAG_FULLSCREEN; } if (Build.VERSION.SDK_INT >= 19) { uiOptionsNew |= View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; } } else { if (Build.VERSION.SDK_INT >= 14) { uiOptionsNew &= ~View.SYSTEM_UI_FLAG_HIDE_NAVIGATION; } if (Build.VERSION.SDK_INT >= 16) { uiOptionsNew &= ~View.SYSTEM_UI_FLAG_FULLSCREEN; } if (Build.VERSION.SDK_INT >= 19) { uiOptionsNew &= ~View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; } } getWindow().getDecorView().setSystemUiVisibility(uiOptionsNew); }
From source file:de.sixtyfourktec.mirrorhub.Main.java
@TargetApi(19) private void setFullscreenLevel19() { getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // API 14; hide nav bar | View.SYSTEM_UI_FLAG_LAYOUT_STABLE // API 16 | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION // API 16 | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN // API 16 | View.SYSTEM_UI_FLAG_FULLSCREEN // API 16; hide status bar | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); // API 19 }
From source file:com.twolinessoftware.smarterlist.activity.TutorialActivity.java
@SuppressLint("NewApi") @Override/*from w w w. j ava2s .c o m*/ public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); if (m_currentApiVersion >= Build.VERSION_CODES.KITKAT && hasFocus) { getWindow().getDecorView().setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); } }