All Projects → zhanghai → Systemuihelper

zhanghai / Systemuihelper

Helper for dealing with Android System UI visibility

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Systemuihelper

Uiwidget
一个集成TabLayout、UIAlertDialog、UIActionSheetDialog、UIProgressDialog、TitleBarView(自带沉浸式标题栏)、CollapsingTitleBarLayout、RadiusView(圆角及状态背景设置View解放shape文件)、KeyboardHelper(软键盘控制及遮挡控制类)、StatusViewHelper(状态栏沉浸帮助类)、NavigationViewHelper(导航栏沉浸式帮助类)、AlphaViewHelper(View透明度控制帮助类) 等项目常用UI库
Stars: ✭ 400 (+270.37%)
Mutual labels:  statusbar, navigationbar
Edge To Edge
Full screen Android apps using simple Kotlin DSL
Stars: ✭ 118 (+9.26%)
Mutual labels:  statusbar, navigationbar
Wrnavigationbar
超简单!!! 一行代码设置状态栏、导航栏按钮、标题、颜色、透明度,移动等 WRNavigationBar which allows you to change NavigationBar's appearance dynamically
Stars: ✭ 2,923 (+2606.48%)
Mutual labels:  statusbar, navigationbar
Wrnavigationbar swift
WRNavigationBar which allows you to change NavigationBar's appearance dynamically
Stars: ✭ 576 (+433.33%)
Mutual labels:  statusbar, navigationbar
Immersionbar
android 4.4以上沉浸式状态栏和沉浸式导航栏管理,适配横竖屏切换、刘海屏、软键盘弹出等问题,可以修改状态栏字体颜色和导航栏图标颜色,以及不可修改字体颜色手机的适配,适用于Activity、Fragment、DialogFragment、Dialog,PopupWindow,一句代码轻松实现,以及对bar的其他设置,详见README。简书请参考:http://www.jianshu.com/p/2a884e211a62
Stars: ✭ 10,030 (+9187.04%)
Mutual labels:  statusbar, navigationbar
Ypnavigationbartransition
A Full functional UINavigationBar framework for making bar transition more natural! You don't need to call any UINavigationBar api, implementing YPNavigationBarConfigureStyle protocol for your view controller instead. (类似微信 iOS Navigation Bar 的切换方案)
Stars: ✭ 725 (+571.3%)
Mutual labels:  statusbar, navigationbar
Ultimatebar
[停止维护]Transparent statusbar and navigationbar
Stars: ✭ 655 (+506.48%)
Mutual labels:  statusbar, navigationbar
Ultimatebarx
Make Android transparent statusbar and navigationbar easy.
Stars: ✭ 879 (+713.89%)
Mutual labels:  statusbar, navigationbar
Fapanels
FAPanels - Swift
Stars: ✭ 850 (+687.04%)
Mutual labels:  statusbar
Statusbarutil
A util for setting status bar style on Android App.
Stars: ✭ 8,726 (+7979.63%)
Mutual labels:  statusbar
Jmcs
Java framework to homogenize your GUI across all the 3 main desktop OS, and further integrates your app to them.
Stars: ✭ 5 (-95.37%)
Mutual labels:  statusbar
Ofxstatusbar
Addon for openFrameworks to add icons and text to the statusbar of Mac OS X (needs support - see readme)
Stars: ✭ 11 (-89.81%)
Mutual labels:  statusbar
Sofia
Android沉浸式效果的实现,状态栏和导航栏均支持设置颜色、渐变色、图片、透明度、内容入侵和状态栏深色字体;兼容竖屏、横屏,当屏幕旋转时会自动适配。
Stars: ✭ 1,206 (+1016.67%)
Mutual labels:  statusbar
Ctags Status
Atom Editor plugin that shows the class/function/scope name of the current line on the status bar.
Stars: ✭ 6 (-94.44%)
Mutual labels:  statusbar
Customnavigationbarsample
Navigation Bar Customization in Xamarin Forms
Stars: ✭ 104 (-3.7%)
Mutual labels:  navigationbar
React Native X Bar
🎩 A flexible, lightweight bar component for common UI patterns in React Native
Stars: ✭ 68 (-37.04%)
Mutual labels:  navigationbar
Animatedbottombar
A customizable and easy to use BottomBar navigation view with sleek animations, with support for ViewPager, ViewPager2, NavController, and badges.
Stars: ✭ 797 (+637.96%)
Mutual labels:  navigationbar
Bubble Navigation
🎉 [Android Library] A light-weight library to easily make beautiful Navigation Bar with ton of 🎨 customization option.
Stars: ✭ 1,537 (+1323.15%)
Mutual labels:  navigationbar
Custom bubble navigation bar
A custom navigation bar with bubble click effect in Flutter
Stars: ✭ 104 (-3.7%)
Mutual labels:  navigationbar
Gitee
Gitee, OS X status bar application for Github
Stars: ✭ 1,095 (+913.89%)
Mutual labels:  statusbar

SystemUiHelper

Helper for dealing with Android System UI visibility. Authored by Roman Nurik and Chris Banes.

Original Blog post: SystemUiHelper · Chris Banes

Original Gist: chrisbanes/SystemUiHelper

Why SystemUiHelper?

Android has introduced a lot of different API for controlling system UI visibility throughout its evolution. In order to simplify such complexity, SystemUiHelper categorized the possible behavior into LEVEL_LOW_PROFILE, LEVEL_HIDE_STATUS_BAR, LEVEL_LEAN_BACK and LEVEL_IMMERSIVE. Each one is pretty self explanatory.

Why this library?

Although there have been some other projects available, I created this library because this way I can always try to track the latest upstream changes. Third-party fixes are also welcomed to be incorporated.

This library has already included a fix for delayed system UI visibility change from myself.

What's more, a sample application is given on how to use the SystemUiHelper with Toolbar from appcompat-v7.

Sample application

Sample APK

Integration

Gradle:

compile 'me.zhanghai.android.systemuihelper:library:1.0.0'

Usage

In Activity.onCreate():

mSystemUiHelper = new SystemUiHelper(this, SystemUiHelper.LEVEL_IMMERSIVE,
        SystemUiHelper.FLAG_IMMERSIVE_STICKY,
        new SystemUiHelper.OnVisibilityChangeListener() {
            @Override
            public void onVisibilityChange(boolean visible) {
                ...
            }
        });
// This will set up window flags.
mSystemUiHelper.show();

You can refer to the sample app's MainActivity for detail.

License

Copyright 2015 Zhang Hai

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].