{"id":18425679,"url":"https://github.com/zhanghai/systemuihelper","last_synced_at":"2025-04-07T16:32:02.050Z","repository":{"id":38248740,"uuid":"47109869","full_name":"zhanghai/SystemUiHelper","owner":"zhanghai","description":"Helper for dealing with Android System UI visibility","archived":false,"fork":false,"pushed_at":"2019-05-16T04:22:59.000Z","size":1070,"stargazers_count":113,"open_issues_count":0,"forks_count":14,"subscribers_count":10,"default_branch":"master","last_synced_at":"2023-10-20T23:59:31.847Z","etag":null,"topics":["android","android-library","navigationbar","statusbar","systemui"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zhanghai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-11-30T09:56:50.000Z","updated_at":"2023-08-28T03:15:04.000Z","dependencies_parsed_at":"2022-08-24T04:50:11.543Z","dependency_job_id":null,"html_url":"https://github.com/zhanghai/SystemUiHelper","commit_stats":null,"previous_names":["dreamingincodezh/systemuihelper"],"tags_count":1,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhanghai%2FSystemUiHelper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhanghai%2FSystemUiHelper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhanghai%2FSystemUiHelper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhanghai%2FSystemUiHelper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zhanghai","download_url":"https://codeload.github.com/zhanghai/SystemUiHelper/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223286479,"owners_count":17120000,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-library","navigationbar","statusbar","systemui"],"created_at":"2024-11-06T05:04:54.017Z","updated_at":"2024-11-06T05:04:54.587Z","avatar_url":"https://github.com/zhanghai.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SystemUiHelper\n\nHelper for dealing with Android System UI visibility. Authored by Roman Nurik and Chris Banes.\n\nOriginal Blog post: [SystemUiHelper · Chris Banes](https://chris.banes.me/2014/08/29/systemuihelper/)\n\nOriginal Gist: [chrisbanes/SystemUiHelper](https://gist.github.com/chrisbanes/73de18faffca571f7292)\n\n## Why SystemUiHelper?\n\nAndroid 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.\n\n## Why this library?\n\nAlthough there have been [some other projects](https://github.com/search?utf8=%E2%9C%93\u0026q=SystemUiHelper) 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.\n\nThis library has already included [a fix for delayed system UI visibility change](https://gist.github.com/chrisbanes/73de18faffca571f7292#gistcomment-1633712) from myself.\n\nWhat's more, a sample application is given on how to use the `SystemUiHelper` with `Toolbar` from `appcompat-v7`.\n\n![Sample application](screenshot/sample.gif)\n\n[Sample APK](//github.com/zhanghai/SystemUiHelper/releases/download/v1.0.0/sample-release.apk)\n\n## Integration\n\nGradle:\n\n```gradle\ncompile 'me.zhanghai.android.systemuihelper:library:1.0.0'\n```\n\n## Usage\n\nIn `Activity.onCreate()`:\n\n```java\nmSystemUiHelper = new SystemUiHelper(this, SystemUiHelper.LEVEL_IMMERSIVE,\n        SystemUiHelper.FLAG_IMMERSIVE_STICKY,\n        new SystemUiHelper.OnVisibilityChangeListener() {\n            @Override\n            public void onVisibilityChange(boolean visible) {\n                ...\n            }\n        });\n// This will set up window flags.\nmSystemUiHelper.show();\n```\n\nYou can refer to the sample app's [MainActivity](sample/src/main/java/me/zhanghai/android/systemuihelper/sample/MainActivity.java) for detail.\n\n## License\n\n    Copyright 2015 Zhang Hai\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhanghai%2Fsystemuihelper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzhanghai%2Fsystemuihelper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhanghai%2Fsystemuihelper/lists"}