Example usage for android.view View setOnSystemUiVisibilityChangeListener

List of usage examples for android.view View setOnSystemUiVisibilityChangeListener

Introduction

In this page you can find the example usage for android.view View setOnSystemUiVisibilityChangeListener.

Prototype

public void setOnSystemUiVisibilityChangeListener(OnSystemUiVisibilityChangeListener l) 

Source Link

Document

Set a listener to receive callbacks when the visibility of the system bar changes.

Usage

From source file:Main.java

public static void clearVisibilityChangeListener(View view) {
    if (view != null) {
        view.setOnSystemUiVisibilityChangeListener(null);
    }//  www  .  j a  v  a2  s  .  c  om
}

From source file:Main.java

public static void onResume(Activity activity) {
    View decorView = activity.getWindow().getDecorView();
    hideSystemUI(decorView);//  www  .  jav a 2 s  . c  om
    decorView.setOnSystemUiVisibilityChangeListener(visibility -> {
        if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) {
            hideSystemUI(decorView);
        }
    });
}

From source file:Main.java

public static void onResume(Dialog dialog) {
    View decorView = dialog.getWindow().getDecorView();
    dialog.getWindow().setFlags(FLAG_NOT_FOCUSABLE, FLAG_NOT_FOCUSABLE);
    dialog.setOnShowListener(d -> dialog.getWindow().clearFlags(FLAG_NOT_FOCUSABLE));
    hideSystemUI(decorView);//from   w w w  . j  av a2  s .com
    decorView.setOnSystemUiVisibilityChangeListener(visibility -> {
        if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) {
            hideSystemUI(decorView);
        }
    });
}

From source file:com.manning.androidhacks.hack044.MainActivity3X.java

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);/*from   ww w .java  2s .c o  m*/

    final View contentView = findViewById(R.id.content);

    contentView.setOnSystemUiVisibilityChangeListener(new OnSystemUiVisibilityChangeListener() {
        @Override
        public void onSystemUiVisibilityChange(int visibility) {
            final ActionBar actionBar = getActionBar();
            if (actionBar != null) {
                contentView.setSystemUiVisibility(visibility);

                if (visibility == View.STATUS_BAR_VISIBLE) {
                    actionBar.show();
                } else {
                    actionBar.hide();
                }
            }
        }
    });

    contentView.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            if (contentView.getSystemUiVisibility() == View.STATUS_BAR_VISIBLE) {
                contentView.setSystemUiVisibility(View.STATUS_BAR_HIDDEN);
            } else {
                contentView.setSystemUiVisibility(View.STATUS_BAR_VISIBLE);
            }
        }
    });
}

From source file:cn.androidy.materialdesignsample.immersivemode.ImmersiveModeFragment.java

@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    final View decorView = getActivity().getWindow().getDecorView();
    decorView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {
        @Override//from www  .  j av  a 2s . c om
        public void onSystemUiVisibilityChange(int i) {
            int height = decorView.getHeight();
            Log.i(TAG, "Current height: " + height);
        }
    });
}

From source file:uk.co.fuuzetsu.turnofwar.GameActivity.java

@SuppressLint("NewApi")
@Override/*  ww  w .j ava  2 s .  c  om*/
protected final void onCreate(final Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    // remove the title bar
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    int currentApiVersion = android.os.Build.VERSION.SDK_INT;
    final int flags = 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;

    // This work only for android 4.4+
    if (currentApiVersion >= 19) {

        getWindow().getDecorView().setSystemUiVisibility(flags);
        // Code below is for case when you press Volume up or Volume down.
        // Without this after pressing valume buttons navigation bar will
        // show up and don't hide
        final View decorView = getWindow().getDecorView();
        decorView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {

            @Override
            public void onSystemUiVisibilityChange(int visibility) {
                if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) {
                    decorView.setSystemUiVisibility(flags);
                }
            }
        });
    } else {
        // remove the status bar
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);

        Log.d(TAG, "in onCreate");
        // setContentView(R.layout.loading_screen);
        Log.d(TAG, "on inCreate");
    }
}

From source file:com.twolinessoftware.smarterlist.activity.TutorialActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    getWindow().setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS,
            WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

    m_currentApiVersion = android.os.Build.VERSION.SDK_INT;

    // This work only for android 4.4+
    if (m_currentApiVersion >= Build.VERSION_CODES.KITKAT) {

        getWindow().getDecorView().setSystemUiVisibility(flags);

        // Code below is to handle presses of Volume up or Volume down.
        // Without this, after pressing volume buttons, the navigation bar will
        // show up and won't hide
        final View decorView = getWindow().getDecorView();
        decorView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {

            @Override/*  w ww. ja v a  2s  .  c om*/
            public void onSystemUiVisibilityChange(int visibility) {
                if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) {
                    decorView.setSystemUiVisibility(flags);
                }
            }
        });
    }

    setContentView(R.layout.activity_tutorial);

    ButterKnife.inject(this);

    configureFragments();
}

From source file:com.miz.mizuu.ImageViewer.java

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    if (MizLib.hasKitKat()) {
        setTheme(R.style.Mizuu_Theme_Translucent_FullScreen);
    } else {// w  w w. j  a  va 2  s  .co m
        setTheme(R.style.Mizuu_Theme_Transparent_FullScreen);
    }

    ViewUtils.setupWindowFlagsForStatusbarOverlay(getWindow(), true);

    mToolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(mToolbar);

    ViewUtils.setProperToolbarSize(this, mToolbar);

    getSupportActionBar().setBackgroundDrawable(getResources().getDrawable(R.drawable.transparent_actionbar));

    mBus = MizuuApplication.getBus();

    mPortraitPhotos = getIntent().getBooleanExtra("portraitPhotos", true);
    mPhotos = getIntent().getStringArrayExtra("photos");

    getSupportActionBar().setTitle((getIntent().getIntExtra("selectedIndex", 0) + 1) + " "
            + getString(R.string.of) + " " + mPhotos.length);

    mViewPager = (ViewPager) findViewById(R.id.awesomepager);
    mViewPager.setPageMargin(MizLib.convertDpToPixels(getApplicationContext(), 16));
    mViewPager.setAdapter(new ActorPhotosAdapter(getSupportFragmentManager()));
    mViewPager.setOnPageChangeListener(new SimpleOnPageChangeListener() {
        @Override
        public void onPageSelected(int arg0) {
            getSupportActionBar().setTitle((arg0 + 1) + " " + getString(R.string.of) + " " + mPhotos.length);
        }

    });
    mViewPager.setCurrentItem(getIntent().getIntExtra("selectedIndex", 0));

    View decorView = getWindow().getDecorView();
    decorView.setOnSystemUiVisibilityChangeListener(new OnSystemUiVisibilityChangeListener() {
        @Override
        public void onSystemUiVisibilityChange(int visibility) {
            if (visibility == 0) {
                // The UI is visible due to user interaction - let's hide it again after three seconds
                mHandler.postDelayed(mHideSystemUiRunnable, 3000);
            }
        }
    });
}

From source file:org.xwalk.app.template.AppTemplateActivity.java

public void UiChangeListener() {
    final View decorView = getWindow().getDecorView();
    decorView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {
        @Override/*  w w  w  .  j  a  v  a 2  s .co m*/
        public void onSystemUiVisibilityChange(int visibility) {
            if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) {
                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);
            }
        }
    });
}

From source file:com.lightplus.MainActivity.java

/**
 * Called when the activity is first created.
 *//*  www .  ja v a 2 s. c om*/
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mSystemUiHelper = new SystemUiHelper(this, SystemUiHelper.LEVEL_IMMERSIVE, 0);
    mSystemUiHelper.hide();
    setContentView(LAYOUT);

    calcStatusBarHeight();
    calcActionBarHeight();

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        View decorView = getWindow().getDecorView();
        decorView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {
            @Override
            public void onSystemUiVisibilityChange(int visibility) {
                // Note that system bars will only be "visible" if none of the
                // LOW_PROFILE, HIDE_NAVIGATION, or FULLSCREEN flags are set.
                if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) {
                    // The system bars are visible.
                    animToolActionBar(mStatusBarHeight);
                } else {
                    if (mFistTimeHide) {
                        mFistTimeHide = false;
                        return;
                    }
                    // The system bars are NOT visible.
                    animToolActionBar(0);
                }
            }
        });
    }
    mToolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(mToolbar);

    mSurface = (PreviewSurface) findViewById(R.id.surface);
    mSurface.setCallback(this);

    // When user selects mode from menu, there's a mode type
    mCurrentMode = getIntent().getIntExtra(MODE_TYPE, -1);
    // When launched clean, there's no mode in the intent, so check preference
    if (mCurrentMode == -1) {
        SharedPreferences modePreferences = getPreferences(Context.MODE_PRIVATE);
        mCurrentMode = modePreferences.getInt(MODE_TYPE, R.id.mode_blackout);

        // Rewrite the intent to carry the desired mode
        Intent intent = getIntent();
        intent.putExtra(MODE_TYPE, mCurrentMode);
        setIntent(intent);
    }
    // Set up layout with initial controller fragment
    mFragmentManager = getSupportFragmentManager();
    switchControlFragment(mCurrentMode);
}