diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000000..750e8ac81a --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,12 @@ +# These are supported funding model platforms + +github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] +patreon: # Replace with a single Patreon username +open_collective: # Replace with a single Open Collective username +ko_fi: # Replace with a single Ko-fi username +tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel +community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry +liberapay: # Replace with a single Liberapay username +issuehunt: # Replace with a single IssueHunt username +otechie: # Replace with a single Otechie username +custom: https://raw.githubusercontent.com/Blankj/AndroidUtilCode/master/art/donate.png diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index daea781567..0000000000 --- a/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,44 +0,0 @@ -## Describe the bug - -A clear and concise description of what the bug is. - -- The version of utilcode: -- The device: -- The version of device: - -## The code of bug - - -``` -put your code here -``` - -## The stack of crash - - - -``` -put the stack of crash here -``` - -## Screenshots - -If applicable, add screenshots to help explain your problem. - - -Please delete the current line and the followings. - -Thank you for supporting [AndroidUtilCode](https://github.com/Blankj/AndroidUtilCode). \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000000..e29c2e45b6 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,52 @@ +--- +name: Bug report +about: Make AndroidUtilCode more perfect! +labels: bug +assignees: Blankj + +--- + +## Describe the bug + +A clear and concise description of what the bug is. + +- The version of AndroidUtilCode: +- The device: +- The version of device: + +## The code of bug + + +``` +put your code here +``` + +## The stack of crash + + + +``` +put the stack of crash here +``` + +## Screenshots + +If applicable, add screenshots to help explain your problem. + + +## Please delete the current line and the following. + +Thank you for supporting [AndroidUtilCode](https://github.com/Blankj/AndroidUtilCode). diff --git a/.github/ISSUE_TEMPLATE/bug_report_cn.md b/.github/ISSUE_TEMPLATE/bug_report_cn.md new file mode 100644 index 0000000000..02ea0223e3 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report_cn.md @@ -0,0 +1,52 @@ +--- +name: 提交 Bug +about: 让工具类更完美! +labels: bug +assignees: Blankj + +--- + +## 描述 Bug + +简洁地描述下 Bug。 + +- AndroidUtilCode 的版本: +- 出现 Bug 的设备型号: +- 设备的 Android 版本: + +## 相关代码 + + +``` +put your code here +``` + +## 异常堆栈 + + + +``` +put the stack of crash here +``` + +## 截图 + +如果有的话请添加屏幕截图以帮助解释问题。 + + +## 请删除当前行及以下内容 + +感谢支持 [AndroidUtilCode](https://github.com/Blankj/AndroidUtilCode). diff --git a/.github/ISSUE_TEMPLATE/feature-request.md b/.github/ISSUE_TEMPLATE/feature-request.md new file mode 100644 index 0000000000..90a0fe1993 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature-request.md @@ -0,0 +1,21 @@ +--- +name: Feature request +about: Make AndroidUtilCode more perfect! +labels: help wanted +assignees: Blankj + +--- + +## Describe the feature + +A clear and concise description of what the feature is. + + +## Reference + +Hope to give some reference articles, links, code, if any. + + +## Please delete the current line and the following + +Thank you for supporting [AndroidUtilCode](https://github.com/Blankj/AndroidUtilCode). diff --git a/.github/ISSUE_TEMPLATE/feature-request_cn.md b/.github/ISSUE_TEMPLATE/feature-request_cn.md new file mode 100644 index 0000000000..20862d047b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature-request_cn.md @@ -0,0 +1,21 @@ +--- +name: 提交需求 +about: 让工具类更健全! +labels: help wanted +assignees: Blankj + +--- + +## 描述需求 + +简洁地描述下需求。 + + +## 可借鉴的 + +如果有的话,可以给出一些参考文章、链接、代码 + + +## 请删除当前行及以下内容 + +感谢支持 [AndroidUtilCode](https://github.com/Blankj/AndroidUtilCode). diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml new file mode 100644 index 0000000000..311fc1deaa --- /dev/null +++ b/.github/workflows/android.yml @@ -0,0 +1,17 @@ +name: Android CI + +on: [push] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Build with Gradle + run: ./gradlew build aR diff --git a/.gitignore b/.gitignore index faabe23a8b..9d11f56a24 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,15 @@ *.iml +__api__.json +__bus__.json .gradle -/local.properties +local.properties .idea .DS_Store /build /captures .externalNativeBuild /apk -/maven \ No newline at end of file +*.phrof +/mavenLocal +/reports +*/reports \ No newline at end of file diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index b4e77e194d..0000000000 --- a/.travis.yml +++ /dev/null @@ -1,24 +0,0 @@ -language: android -jdk: oraclejdk8 -sudo: false - -android: - components: - - tools - - platform-tools - - build-tools-27.0.2 - - android-27 - - add-on - - extra - - licenses: - - 'android-sdk-license-.+' - - notifications: - email: false - -before_install: - - yes | $ANDROID_HOME/tools/bin/sdkmanager "build-tools;26.0.2" - -script: - - ./gradlew build connectedCheck --info diff --git a/CHANGELOG.md b/CHANGELOG.md index fe9c7f0787..73e8145bf1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,150 @@ +* `22/10/15` [add] Fix some issue. Publish v1.31.1 +* `21/12/06` [add] Publish v1.31.0 +* `21/05/13` [add] Support publish mavenCentral. +* `21/02/22` [add] Fix ToastUtils rtl bug. Publish v1.30.6. +* `20/11/16` [add] Add ImageUtils#save2Album support param of dirName. +* `20/11/13` [add] Fix MessengerUtils ANR. Add NetworkUtils#getWifiScanResult, [add|remove]OnWifiChangedConsumer. Publish v1.30.5. +* `20/10/29` [add] Fix MessengerUtils startService IllegalStateException. Publish v1.30.4. +* `20/10/28` [add] Fix BusUtils ConcurrentModificationException. Publish v1.30.3. +* `20/10/27` [add] Fix AppUtils#getAppSignatures. Add DeviceUtils#isDevelopmentSettingsEnabled. Publish v1.30.2. +* `20/10/26` [add] Fix AppUtils#isAppForeground. Publish v1.30.1. +* `20/10/24` [add] Publish v1.30.0. +* `20/10/23` [fix] LanguageUtils crash on some device. +* `20/10/21` [add] LogUtils.Config#setOnConsoleOutputListener, setOnFileOutputListener, addFileExtraHead. LogUtils.getCurrentLogFilePath. +* `20/10/20` [opt] ToastUtils. +* `20/10/12` [add] PermissionUtils#explain. +* `20/10/10` [add] ClipboardUtils. +* `20/10/08` [add] VolumeUtils. +* `20/09/06` [add] DebouncingUtils#isValid. +* `20/09/04` [fix] ToastUtils adapt SDK 30. +* `20/05/28` [fix] IntentUtils#getInstallAppIntent file exist wrong. Publish v1.29.0. +* `20/05/23` [fix] BusUtils#postSticky times not right. Publish v1.28.6. +* `20/05/22` [add] IntentUtils#getInstallAppIntent support Uri param. +* `20/05/21` [add] Publish bus plugin v2.6. Publish api plugin v1.4. Publish. Publish v1.28.5. +* `20/05/19` [fix] FileUtils#copyOrMoveDird NPE. +* `20/05/18` [add] IntentUtils#getLaunchAppDetailsSettingsIntent support isNewTask. +* `20/05/17` [add] ImageUtils#save2Album, NetworkUtils#getSSID, UtilsTransActivity4MainProcess. +* `20/05/03` [add] Publish bus plugin v2.5. Publish api plugin v1.3. Publish. Publish v1.28.4. +* `20/04/30` [add] BaseItem support partialUpdate. +* `20/04/29` [add] Publish plugin lib com.blankj:base-transform:1.0. +* `20/04/28` [fix] LanguageUtils#applyLanguage. +* `20/04/27` [fix] BarUtils#isNavBarVisible. +* `20/04/26` [fix] Utils#init fit tinker. Publish v1.28.3. +* `20/04/25` [fix] UriUtils#uri2File Unknown URI. Publish 1.28.2. +* `20/04/24` [add] SnackbarUtils support show on the top; UriUtils#uri2InputStream. +* `20/04/23` [fix] UriUtils#uri2File not support HW; TransActivity crash below 21. +* `20/04/23` [fix] PhoneUtils#getSerial, PhoneUtils#getSerial crash on Android 10. +* `20/04/20` [fix] ImageUtils#isImage. +* `20/04/18` [fix] PermissionUtils#callback. Publish v1.28.1. +* `20/04/17` [fix] ImageUtils#view2Bitmap, ImageUtils.getBitmap(InputStream). +* `20/04/16` [add] ConvertUtils#int2HexString, hexString2Int. +* `20/04/15` [add] UiMessageUtils' demo. +* `20/04/13` [add] NumberUtils. Publish v1.28.0. +* `20/04/12` [opt] TimeUtils#SDF_THREAD_LOCAL. +* `20/04/11` [add] SDCardUtils#getXxTotalSize, SDCardUtils#getXxAvailableSize. FileUtils#getFsTotalSize, FileUtils#getFsAvailableSize. +* `20/04/10` [fix] FileUtils#isFileExists; FragmentUtils#getTop bug. Publish v1.27.6. +* `20/04/09` [add] UriUtils#res2Uri, UriUtils#uri2File support QQBrowser; ThreadUtils#getMainHandler; PathUtils#getxxPathExternalFirst. +* `20/04/08` [fix] ActivityUtils#finish bug. Publish v1.27.5. +* `20/04/08` [fix] CleanUtils clean dir not work. FileUtils#isFileExists. Publish v1.27.4. +* `20/04/08` [fix] CrashUtils DefaultUncaughtExceptionHandler is wrong; LogUtils write file failed; Utils#getApp failed run on remote process. Publish v1.27.3. +* `20/04/07` [mdf] GsonUtils#getGson() method public. +* `20/04/04` [fix] ShadowUtils bug running on lower version devices. Publish v1.27.2. +* `20/04/03` [fix] UtilsActivityLifecycleImpl#HashMap#remove IllegalStateException bug. +* `20/04/02` [fix] PathUtils sdcard enable state is wrong; ActivityUtils finish activity wrong; Publish v1.27.1. +* `20/03/31` [add] Publish v1.27.0. +* `20/03/30` [add] BatteryUtils in subutil. +* `20/03/27` [add] publish.gradle. +* `20/03/24` [add] UtilsBridge to clean the utils. +* `20/03/22` [upd] GsonUtils support custom gson. +* `20/03/20` [add] ActivityUtils#addActivityLifecycleCallbacks, ActivityUtils#removeActivityLifecycleCallbacks. +* `20/01/17` [upd] Leak Canary to v2.1. +* `20/01/06` [add] ClickUtils#expandClickArea, ClickUtils#back2HomeFriendly +* `19/11/30` [add] Publish bus plugin v2.4. Publish api plugin v1.2. +* `19/11/28` [add] Publish v1.26.0. +* `19/11/27` [add] Shadow demo. +* `19/11/26` [add] MVP demo. +* `19/11/22` [fix] Adapt the project for Gradle version of 6.0. +* `19/10/30` [add] Publish bus plugin v2.3. Publish api plugin v1.1. +* `19/10/24` [upd] Demo's UI. +* `19/10/22` [add] NotificationUtils and demo. +* `19/10/20` [add] UiMessageUtils. +* `19/09/20` [add] ShadowUtils. +* `19/08/27` [add] DebugUtils. +* `19/08/26` [fix] PermissionUtils NPE. +* `19/08/25` [upd] ImageUtils#getImageType. [add] LogUtils#getLogFiles. Publish v1.25.9. +* `19/08/24` [fix] PhoneUtils#getIMEI crash on SDK 29. +* `19/08/23` [add] ViewUtils#isLayoutRtl. +* `19/08/22` [add] LogUtils#getLogFiles. +* `19/08/13` [add] MapUtils and MapUtilsTest. Publish v1.25.8. +* `19/08/12` [add] CollectionUtils and CollectionUtilsTest. +* `19/08/11` [add] ArrayUtils and ArrayUtilsTest. +* `19/08/09` [fix] https://www.virustotal.com/gui/home/upload with ESET-NOD32. Publish v1.25.7. +* `19/08/08` [add] BusUtils#post tag support one-to-many. Publish v1.25.6. +* `19/08/04` [add] ThreadUtils#Task support timeout. +* `19/08/01` [upd] EncryptUtils#rsa. +* `19/07/31` [add] DeviceUtils#getUniqueDeviceId, DeviceUtils#isSameDevice. Publish v1.25.5. +* `19/07/30` [fix] ThreadUtils's task can only be executed once. PhoneUtils#getIMEI wrong. +* `19/07/29` [fix] BusUtils post father class useless. KeyboardUtils#hideSoft bug. Publish v1.25.4. +* `19/07/28` [add] NetworkUtils#(un)registerNetworkStatusChangedListener. Publish v1.25.3. +* `19/07/27` [fix] ThreadUtils memory leak. +* `19/07/26` [add] ContainerUtils. Publish v1.25.2. +* `19/07/25` [fix] PermissionUtils' NullPointException. +* `19/07/24` [fix] ZipUtils#unzipFile. +* `19/07/23` [fix] ThreadUtils of cache pool. Publish v1.25.1. +* `19/07/18` [add] README of ApiUtils and BusUtils. +* `19/07/15` [add] Publish v1.25.0. +* `19/07/14` [upd] Bus plugin for use BusUtils. Publish bus plugin v2.0. +* `19/07/13` [add] Api plugin for use ApiUtils. Publish api plugin v1.0. +* `19/07/09` [upd] The frame of project. +* `19/07/06` [upd] BusUtils which behave same as EventBus. +* `19/07/03` [add] ApiUtils which decoupling modules. +* `19/06/30` [add] LanguageUtils support activity's class name. +* `19/06/29` [add] ClickUtils#OnMultiClickListener, and remove dangerous function. Publish v1.24.6. +* `19/06/28` [add] LanguageUtils. Publish v1.24.5. +* `19/06/20` [fix] BusUtils' permission. Publish v1.24.4. +* `19/06/19` [fix] UriUtils. Publish v1.24.3. +* `19/06/18` [add] ClickUtils, ViewUtils. +* `19/06/07` [fix] LogUtils file name contains ':'. Publish v1.24.2. +* `19/06/06` [fix] LogUtils write to file. Publish v1.24.1. +* `19/06/03` [fix] Refactoring framework. Publish v1.24.0. +* `19/04/25` [fix] LogUtils delete due log. +* `19/04/24` [upd] The swipe panel. +* `19/03/17` [fix] The ugly UI. +* `19/03/14` [fix] AdaptScreenUtils didn't work on some HaWei tablet. +* `19/03/09` [fix] UriUtils#uri2File. +* `19/03/08` [add] LogUtils support multi process. Publish v1.23.7. +* `19/03/02` [fix] LogUtils#file. +* `19/02/28` [fix] ImageUtils#calculateInSampleSize. Publish v1.23.6. +* `19/02/26` [fix] UriUtils#uri2File. Publish v1.23.5. +* `19/01/31` [add] HttpUtils. +* `19/01/30` [add] RomUtils. Publish v1.23.4. +* `19/01/29` [fix] LogUtils format json when json not start with '{'. Publish v1.23.3. +* `19/01/28` [fix] KeyboardUtils#fixSoftInputLeaks don't work on the device of HuaWei. +* `19/01/26` [fix] NetworkUtils#getNetworkType. +* `19/01/25` [add] CloneUtils, PermissionUtils support request permission of WRITE_SETTINGS and DRAW_OVERLAYS. Publish v1.23.2. +* `19/01/24` [add] BrightnessUtils and FlashlightUtils. +* `19/01/23` [add] Modify the demo of utilcode use kotlin. Publish v1.23.1. +* `19/01/22` [fix] AppUtils#installApp. +* `19/01/17` [fix] Publish v1.23.0. +* `19/01/16` [fix] BarUtils get Activity from view and delete the function of set status bar alpha. +* `19/01/15` [add] ColorUtils. +* `19/01/04` [add] CacheDiskStaticUtils, CacheDoubleStaticUtils, CacheMemoryStaticUtils. +* `19/01/03` [add] SPStaticUtils. +* `19/01/02` [fix] LogUtils log object. Publish v1.22.10. +* `19/01/01` [add] GsonUtils. +* `18/12/29` [add] AntiShakeUtils and VibrateUtils. Publish v1.22.9. +* `18/12/28` [fix] ToastUtils show behind the dialog when close notification. +* `18/12/27` [fix] LogUtils print StringBuilder failed. +* `18/12/24` [fix] Utils$ActivityLifecycleImpl.consumeOnActivityDestroyedListener ConcurrentModificationException. Publish v1.22.7. +* `18/12/22` [fix] AdaptScreenUtils#pt2px don't work when start webview. Publish v1.22.6. +* `18/12/21` [add] LogUtils support print Map, Collection and Object to String. +* `18/12/19` [fix] AdaptScreenUtils don't work in MIUI on Android 5.1.1. Publish v1.22.5. +* `18/12/18` [fix] ToastUtils multi show crash when run API 25. Publish v1.22.4. +* `18/12/18` [fix] ImageUtils recycle ret equals src. Publish v1.22.3. +* `18/12/17` [fix] Utils$FileProvider4UtilCode not found. Publish v1.22.3. +* `18/12/17` [fix] ToastUtils leak. Publish v1.22.2. +* `18/12/09` [add] Component for the project. +* `18/12/04` [add] BusUtils. Publish v1.22.1. * `18/11/18` [fix] ToastUtils don't show in the devices grater than API 24 when close the permission of notification. Publish v1.22.0. * `18/11/17` [fix] AppUtils#isAppInstalled don't work in no launcher app. * `18/11/16` [fix] ThreadUtils#cancel block the main thread. diff --git a/README-CN.md b/README-CN.md index 7fc7dc13ff..5c85dca1fe 100644 --- a/README-CN.md +++ b/README-CN.md @@ -1,6 +1,8 @@ -![logo][logo] +[![logo][logo]](https://github.com/Blankj/AndroidUtilCode) -[![auc][aucSvg]][auc] [![api][apiSvg]][api] [![build][buildSvg]][build] [![Insight][insightSvg]][insight] [![License][licenseSvg]][license] +[![frame][frame]](https://github.com/Blankj/AucFrameTemplate) + +[![auc][aucSvg]][auc] [![result][apiSvg]][result] [![build][buildSvg]][build] [![License][licenseSvg]][license] ## [README of English][readme] @@ -35,35 +37,38 @@ [![Blog][blogSvg]][blog] [![jianshu][jianshuSvg]][jianshu] [![weibo][weiboSvg]][weibo] [![QQGroup][qqgroupSvg]][qqgroup] -## [Update Log][updateLog.md] +## [Change Log][changeLog.md] + + +## 打个小广告 +欢迎加入我的小专栏「**[基你太美](https://xiaozhuanlan.com/Blankj)**」一起学习。 [logo]: https://raw.githubusercontent.com/Blankj/AndroidUtilCode/master/art/logo.png -[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.22.0-brightgreen.svg +[frame]: https://raw.githubusercontent.com/Blankj/AndroidUtilCode/master/art/auc_frame_cn.png + +[aucSvg]: https://github.com/Blankj/AndroidUtilCode/workflows/Android%20CI/badge.svg?branch=master [auc]: https://github.com/Blankj/AndroidUtilCode [apiSvg]: https://img.shields.io/badge/API-14+-brightgreen.svg -[api]: https://android-arsenal.com/api?level=14 +[result]: https://android-arsenal.com/result?level=14 [buildSvg]: https://travis-ci.org/Blankj/AndroidUtilCode.svg?branch=master [build]: https://travis-ci.org/Blankj/AndroidUtilCode -[insightSvg]: https://www.insight.io/repoBadge/github.com/Blankj/AndroidUtilCode -[insight]: https://insight.io/github.com/Blankj/AndroidUtilCode - [licenseSvg]: https://img.shields.io/badge/License-Apache--2.0-brightgreen.svg [license]: https://github.com/Blankj/AndroidUtilCode/blob/master/LICENSE [readme]: https://github.com/Blankj/AndroidUtilCode [readme-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/README-CN.md -[utilcode]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/README.md -[utilcode-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/README-CN.md +[utilcode]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/README.md +[utilcode-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/README-CN.md -[subutil]: https://github.com/Blankj/AndroidUtilCode/blob/master/subutil/README.md -[subutil-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/subutil/README-CN.md +[subutil]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/subutil/README.md +[subutil-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/subutil/README-CN.md [changeLog.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/CHANGELOG.md diff --git a/README.md b/README.md index 926a16500d..9ae668e26e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ -![logo][logo] +[![logo][logo]](https://github.com/Blankj/AndroidUtilCode) -[![auc][aucSvg]][auc] [![api][apiSvg]][api] [![build][buildSvg]][build] [![Insight][insightSvg]][insight] [![License][licenseSvg]][license] +[![frame][frame]](https://github.com/Blankj/AucFrameTemplate) + +[![auc][aucSvg]][auc] [![result][apiSvg]][result] [![build][buildSvg]][build] [![License][licenseSvg]][license] ## [README of Chinese][readme-cn] @@ -35,35 +37,38 @@ If this project helps you a lot and you want to support the project's developmen [![Blog][blogSvg]][blog] [![jianshu][jianshuSvg]][jianshu] [![weibo][weiboSvg]][weibo] [![QQGroup][qqgroupSvg]][qqgroup] -## [Update Log][update_log.md] +## [Change Log][changeLog.md] + + +## 打个小广告 +欢迎加入我的小专栏「**[基你太美](https://xiaozhuanlan.com/Blankj)**」一起学习。 [logo]: https://raw.githubusercontent.com/Blankj/AndroidUtilCode/master/art/logo.png -[aucSvg]: https://img.shields.io/badge/AndroidUtilCode-v1.22.0-brightgreen.svg +[frame]: https://raw.githubusercontent.com/Blankj/AndroidUtilCode/master/art/auc_frame.png + +[aucSvg]: https://github.com/Blankj/AndroidUtilCode/workflows/Android%20CI/badge.svg?branch=master [auc]: https://github.com/Blankj/AndroidUtilCode [apiSvg]: https://img.shields.io/badge/API-14+-brightgreen.svg -[api]: https://android-arsenal.com/api?level=14 +[result]: https://android-arsenal.com/result?level=14 [buildSvg]: https://travis-ci.org/Blankj/AndroidUtilCode.svg?branch=master [build]: https://travis-ci.org/Blankj/AndroidUtilCode -[insightSvg]: https://www.insight.io/repoBadge/github.com/Blankj/AndroidUtilCode -[insight]: https://insight.io/github.com/Blankj/AndroidUtilCode - [licenseSvg]: https://img.shields.io/badge/License-Apache--2.0-brightgreen.svg [license]: https://github.com/Blankj/AndroidUtilCode/blob/master/LICENSE [readme]: https://github.com/Blankj/AndroidUtilCode [readme-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/README-CN.md -[utilcode]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/README.md -[utilcode-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/README-CN.md +[utilcode]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/README.md +[utilcode-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/README-CN.md -[subutil]: https://github.com/Blankj/AndroidUtilCode/blob/master/subutil/README.md -[subutil-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/subutil/README-CN.md +[subutil]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/subutil/README.md +[subutil-cn]: https://github.com/Blankj/AndroidUtilCode/blob/master/lib/subutil/README-CN.md [changeLog.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/CHANGELOG.md diff --git a/app/__bus__.json b/app/__bus__.json deleted file mode 100644 index 6acb0ff268..0000000000 --- a/app/__bus__.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "CloseAdaptActivity#start": "void com.blankj.androidutilcode.feature.core.adaptScreen.CloseAdaptActivity.start(android.content.Context)" -} \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle deleted file mode 100644 index 303a07b527..0000000000 --- a/app/build.gradle +++ /dev/null @@ -1,25 +0,0 @@ -plugins { - id "com.android.application" - id 'kotlin-android' - id 'kotlin-android-extensions' - id "com.blankj.bus" -} -// in config.gradle -configAndroidDomain project - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation project(':utilcode-lib') - implementation project(':subutil-lib') - - implementation dep.support.appcompat_v7 - implementation dep.support.design - implementation dep.constraint - implementation dep.kotlin - implementation dep.free_proguard - implementation 'com.r0adkll:slidableactivity:2.0.5' - // LeakCanary - debugImplementation dep.leakcanary.android - releaseImplementation dep.leakcanary.android_no_op -// implementation 'com.blankj:utilcode:1.22.0' -} \ No newline at end of file diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro deleted file mode 100644 index 781f9c8aa5..0000000000 --- a/app/proguard-rules.pro +++ /dev/null @@ -1,17 +0,0 @@ -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in G:\Android_IDE\ADT\sdk/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the proguardFiles -# directive in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# Add any project specific keep options here: - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml deleted file mode 100644 index aeaecd9d35..0000000000 --- a/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,221 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/java/com/blankj/androidutilcode/Config.java b/app/src/main/java/com/blankj/androidutilcode/Config.java deleted file mode 100644 index fcbad1dba2..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/Config.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.blankj.androidutilcode; - -import android.os.Environment; - -import com.blankj.utilcode.util.Utils; - -import java.io.File; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/05/10
- *     desc  : config about constants
- * 
- */ -public class Config { - - public static final String FILE_SEP = System.getProperty("file.separator"); - public static final String LINE_SEP = System.getProperty("line.separator"); - public static final String PKG = "com.blankj.androidutilcode"; - public static final String TEST_PKG = "com.blankj.testinstall"; - public static final String GITHUB = "https://github.com/Blankj/AndroidUtilCode"; - public static final String BLOG = "https://blankj.com/"; - public static final String CACHE_PATH; - public static final String TEST_APK_PATH; - - static { - File cacheDir = Utils.getApp().getExternalCacheDir(); - if (cacheDir != null) { - CACHE_PATH = cacheDir.getAbsolutePath(); - } else { - CACHE_PATH = Environment.getExternalStorageDirectory().getAbsolutePath(); - } - TEST_APK_PATH = CACHE_PATH + FILE_SEP + "test_install.apk"; - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/MainActivity.java b/app/src/main/java/com/blankj/androidutilcode/MainActivity.java deleted file mode 100644 index 8cd21dfecd..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/MainActivity.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.blankj.androidutilcode; - -import android.graphics.Color; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.design.widget.CollapsingToolbarLayout; -import android.support.v7.app.ActionBarDrawerToggle; -import android.support.v7.widget.Toolbar; -import android.view.View; - -import com.blankj.androidutilcode.base.BaseDrawerActivity; -import com.blankj.androidutilcode.feature.core.CoreUtilActivity; -import com.blankj.androidutilcode.feature.sub.SubUtilActivity; -import com.blankj.utilcode.util.BarUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/29
- *     desc  : MainActivity
- * 
- */ -public class MainActivity extends BaseDrawerActivity { - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_main; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - Toolbar toolbar = findViewById(R.id.toolbar); - View fakeStatusBar = findViewById(R.id.fake_status_bar); - CollapsingToolbarLayout ctl = findViewById(R.id.ctl); - ctl.setExpandedTitleColor(Color.parseColor("#00FFFFFF")); - setSupportActionBar(toolbar); - ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, - rootLayout, - toolbar, - R.string.navigation_drawer_open, - R.string.navigation_drawer_close); - rootLayout.addDrawerListener(toggle); - toggle.syncState(); - - BarUtils.setStatusBarAlpha4Drawer(this, rootLayout, fakeStatusBar, 0, false); - BarUtils.addMarginTopEqualStatusBarHeight(toolbar); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } - - public void coreUtilClick(View view) { - CoreUtilActivity.start(this); - } - - public void subUtilClick(View view) { - SubUtilActivity.start(this); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/UtilsApp.java b/app/src/main/java/com/blankj/androidutilcode/UtilsApp.java deleted file mode 100644 index 4f4951d2a9..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/UtilsApp.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.blankj.androidutilcode; - -import android.annotation.SuppressLint; -import android.content.Context; - -import com.blankj.androidutilcode.base.BaseApplication; -import com.blankj.utilcode.util.AppUtils; -import com.blankj.utilcode.util.CrashUtils; -import com.blankj.utilcode.util.LogUtils; -import com.squareup.leakcanary.LeakCanary; - -import java.util.ArrayList; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/12
- *     desc  : app about utils
- * 
- */ -public class UtilsApp extends BaseApplication { - - private static UtilsApp sInstance; - - public static UtilsApp getInstance() { - return sInstance; - } - - @Override - protected void attachBaseContext(Context base) { - super.attachBaseContext(base); - } - - @Override - public void onCreate() { - super.onCreate(); - sInstance = this; - initLeakCanary(); - initLog(); - initCrash(); - } - - private void initLeakCanary() { - // 内存泄露检查工具 - if (LeakCanary.isInAnalyzerProcess(this)) { - // This process is dedicated to LeakCanary for heap analysis. - // You should not init your app in this process. - return; - } - LeakCanary.install(this); - } - - // init it in ur application - public void initLog() { - final LogUtils.Config config = LogUtils.getConfig() - .setLogSwitch(BuildConfig.DEBUG)// 设置 log 总开关,包括输出到控制台和文件,默认开 - .setConsoleSwitch(BuildConfig.DEBUG)// 设置是否输出到控制台开关,默认开 - .setGlobalTag(null)// 设置 log 全局标签,默认为空 - // 当全局标签不为空时,我们输出的 log 全部为该 tag, - // 为空时,如果传入的 tag 为空那就显示类名,否则显示 tag - .setLogHeadSwitch(true)// 设置 log 头信息开关,默认为开 - .setLog2FileSwitch(false)// 打印 log 时是否存到文件的开关,默认关 - .setDir("")// 当自定义路径为空时,写入应用的/cache/log/目录中 - .setFilePrefix("")// 当文件前缀为空时,默认为"util",即写入文件为"util-yyyy-MM-dd.txt" - .setBorderSwitch(true)// 输出日志是否带边框开关,默认开 - .setSingleTagSwitch(true)// 一条日志仅输出一条,默认开,为美化 AS 3.1 的 Logcat - .setConsoleFilter(LogUtils.V)// log 的控制台过滤器,和 logcat 过滤器同理,默认 Verbose - .setFileFilter(LogUtils.V)// log 文件过滤器,和 logcat 过滤器同理,默认 Verbose - .setStackDeep(1)// log 栈深度,默认为 1 - .setStackOffset(0)// 设置栈偏移,比如二次封装的话就需要设置,默认为 0 - .setSaveDays(3)// 设置日志可保留天数,默认为 -1 表示无限时长 - // 新增 ArrayList 格式化器,默认已支持 Array, Throwable, Bundle, Intent 的格式化输出 - .addFormatter(new LogUtils.IFormatter() { - @Override - public String format(ArrayList list) { - return "LogUtils Formatter ArrayList { " + list.toString() + " }"; - } - }); - LogUtils.d(config.toString()); - } - - @SuppressLint("MissingPermission") - private void initCrash() { - CrashUtils.init(new CrashUtils.OnCrashListener() { - @Override - public void onCrash(String crashInfo, Throwable e) { - LogUtils.e(crashInfo); - AppUtils.relaunchApp(); - } - }); - } -} - - diff --git a/app/src/main/java/com/blankj/androidutilcode/base/BaseActivity.java b/app/src/main/java/com/blankj/androidutilcode/base/BaseActivity.java deleted file mode 100644 index 42f16d9fa8..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/BaseActivity.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.blankj.androidutilcode.base; - -import android.annotation.SuppressLint; -import android.app.Activity; -import android.os.Bundle; -import android.support.annotation.LayoutRes; -import android.support.v7.app.AppCompatActivity; -import android.view.LayoutInflater; -import android.view.View; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/24
- *     desc  : base about activity
- * 
- */ -public abstract class BaseActivity extends AppCompatActivity - implements IBaseView { - - protected View mContentView; - protected Activity mActivity; - - /** - * 上次点击时间 - */ - private long lastClick = 0; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - mActivity = this; - Bundle bundle = getIntent().getExtras(); - initData(bundle); - setBaseView(bindLayout()); - initView(savedInstanceState, mContentView); - doBusiness(); - } - - @SuppressLint("ResourceType") - protected void setBaseView(@LayoutRes int layoutId) { - if (layoutId <= 0) return; - setContentView(mContentView = LayoutInflater.from(this).inflate(layoutId, null)); - } - - /** - * 判断是否快速点击 - * - * @return {@code true}: 是
{@code false}: 否 - */ - private boolean isFastClick() { - long now = System.currentTimeMillis(); - if (now - lastClick >= 200) { - lastClick = now; - return false; - } - return true; - } - - @Override - public void onClick(final View view) { - if (!isFastClick()) onWidgetClick(view); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/BaseApplication.java b/app/src/main/java/com/blankj/androidutilcode/base/BaseApplication.java deleted file mode 100644 index db1a8cac36..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/BaseApplication.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.blankj.androidutilcode.base; - -import android.app.Activity; -import android.app.Application; -import android.os.Bundle; -import android.util.Log; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/03/30
- *     desc  : base about application
- * 
- */ -public class BaseApplication extends Application { - - private static final String TAG = "BaseApplication"; - - private static BaseApplication sInstance; - - public static BaseApplication getInstance() { - return sInstance; - } - - @Override - public void onCreate() { - super.onCreate(); - sInstance = this; - registerActivityLifecycleCallbacks(mCallbacks); - } - - private ActivityLifecycleCallbacks mCallbacks = new ActivityLifecycleCallbacks() { - - @Override - public void onActivityCreated(Activity activity, Bundle savedInstanceState) { - Log.d(TAG, "onActivityCreated() called with: activity = [" + activity + "], savedInstanceState = [" + savedInstanceState + "]"); - } - - @Override - public void onActivityStarted(Activity activity) { - Log.d(TAG, "onActivityStarted() called with: activity = [" + activity + "]"); - } - - @Override - public void onActivityResumed(Activity activity) { - Log.d(TAG, "onActivityResumed() called with: activity = [" + activity + "]"); - } - - @Override - public void onActivityPaused(Activity activity) { - Log.d(TAG, "onActivityPaused() called with: activity = [" + activity + "]"); - } - - @Override - public void onActivityStopped(Activity activity) { - Log.d(TAG, "onActivityStopped() called with: activity = [" + activity + "]"); - } - - @Override - public void onActivitySaveInstanceState(Activity activity, Bundle outState) { - Log.d(TAG, "onActivitySaveInstanceState() called with: activity = [" + activity + "], outState = [" + outState + "]"); - } - - @Override - public void onActivityDestroyed(Activity activity) { - Log.d(TAG, "onActivityDestroyed() called with: activity = [" + activity + "]"); - } - }; -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/BaseBackActivity.java b/app/src/main/java/com/blankj/androidutilcode/base/BaseBackActivity.java deleted file mode 100644 index 197f9065c3..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/BaseBackActivity.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.blankj.androidutilcode.base; - -import android.annotation.SuppressLint; -import android.support.annotation.LayoutRes; -import android.support.design.widget.AppBarLayout; -import android.support.design.widget.CoordinatorLayout; -import android.support.v4.content.ContextCompat; -import android.support.v7.app.ActionBar; -import android.support.v7.widget.Toolbar; -import android.view.LayoutInflater; -import android.widget.FrameLayout; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.UtilsApp; -import com.blankj.utilcode.util.BarUtils; -import com.r0adkll.slidr.Slidr; - - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/06/27
- *     desc  : base about back activity
- * 
- */ -public abstract class BaseBackActivity extends BaseActivity { - - protected CoordinatorLayout rootLayout; - protected Toolbar mToolbar; - protected AppBarLayout abl; - protected FrameLayout flActivityContainer; - - @SuppressLint("ResourceType") - @Override - protected void setBaseView(@LayoutRes int layoutId) { - Slidr.attach(this); - mContentView = LayoutInflater.from(this).inflate(R.layout.activity_back, null); - setContentView(mContentView); - rootLayout = findViewById(R.id.root_layout); - abl = findViewById(R.id.abl); - mToolbar = findViewById(R.id.toolbar); - flActivityContainer = findViewById(R.id.activity_container); - if (layoutId > 0) { - LayoutInflater.from(this).inflate(layoutId, flActivityContainer); - } - setSupportActionBar(mToolbar); - getToolBar().setDisplayHomeAsUpEnabled(true); - - BarUtils.setStatusBarColor(this, ContextCompat.getColor(UtilsApp.getInstance(), R.color.colorPrimary), 0); - BarUtils.addMarginTopEqualStatusBarHeight(rootLayout); - } - - protected ActionBar getToolBar() { - return getSupportActionBar(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/BaseDrawerActivity.java b/app/src/main/java/com/blankj/androidutilcode/base/BaseDrawerActivity.java deleted file mode 100644 index 7e44330965..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/BaseDrawerActivity.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.blankj.androidutilcode.base; - -import android.content.Intent; -import android.net.Uri; -import android.support.annotation.LayoutRes; -import android.support.annotation.NonNull; -import android.support.design.widget.NavigationView; -import android.support.v4.widget.DrawerLayout; -import android.view.LayoutInflater; -import android.view.MenuItem; -import android.widget.FrameLayout; - -import com.blankj.androidutilcode.Config; -import com.blankj.androidutilcode.R; -import com.blankj.utilcode.util.ActivityUtils; - - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/06/27
- *     desc  : base about drawer activity
- * 
- */ -public abstract class BaseDrawerActivity extends BaseActivity { - - protected DrawerLayout rootLayout; - protected FrameLayout flActivityContainer; - - NavigationView.OnNavigationItemSelectedListener mListener = new NavigationView.OnNavigationItemSelectedListener() { - @Override - public boolean onNavigationItemSelected(@NonNull MenuItem item) { - switch (item.getItemId()) { - case R.id.action_git_hub: - ActivityUtils.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(Config.GITHUB))); - break; - case R.id.action_blog: - ActivityUtils.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(Config.BLOG))); - break; - } - return false; - } - }; - - @Override - protected void setBaseView(@LayoutRes int layoutId) { - mContentView = LayoutInflater.from(this).inflate(R.layout.activity_drawer, null); - setContentView(mContentView); - rootLayout = findViewById(R.id.root_layout); - flActivityContainer = findViewById(R.id.activity_container); - flActivityContainer.addView(LayoutInflater.from(this).inflate(layoutId, flActivityContainer, false)); - NavigationView navigationView = findViewById(R.id.nav_view); - navigationView.setNavigationItemSelectedListener(mListener); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/BaseFragment.java b/app/src/main/java/com/blankj/androidutilcode/base/BaseFragment.java deleted file mode 100644 index 490d2aba87..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/BaseFragment.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.blankj.androidutilcode.base; - -import android.app.Activity; -import android.os.Bundle; -import android.support.annotation.IdRes; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentTransaction; -import android.util.Log; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/03/28
- *     desc  : base about v4-fragment
- * 
- */ -public abstract class BaseFragment extends Fragment - implements IBaseView { - - private static final String TAG = "BaseFragment"; - private static final String STATE_SAVE_IS_HIDDEN = "STATE_SAVE_IS_HIDDEN"; - - protected View mContentView; - protected Activity mActivity; - - private long lastClick = 0; - - @Override - public void onCreate(@Nullable Bundle savedInstanceState) { - Log.d(TAG, "onCreate: "); - super.onCreate(savedInstanceState); - if (savedInstanceState != null) { - boolean isSupportHidden = savedInstanceState.getBoolean(STATE_SAVE_IS_HIDDEN); - FragmentTransaction ft = getFragmentManager().beginTransaction(); - if (isSupportHidden) { - ft.hide(this); - } else { - ft.show(this); - } - ft.commitAllowingStateLoss(); - } - } - - @Nullable - @Override - public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { - Log.d(TAG, "onCreateView: "); - setRootLayout(bindLayout()); - return mContentView; - } - - protected void setRootLayout(int layoutId) { - if (layoutId <= 0) return; - mContentView = mActivity.getLayoutInflater().inflate(layoutId, null); - } - - @Override - public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { - Log.d(TAG, "onViewCreated: "); - super.onViewCreated(view, savedInstanceState); - Bundle bundle = getArguments(); - initData(bundle); - } - - @Override - public void onActivityCreated(@Nullable Bundle savedInstanceState) { - Log.d(TAG, "onActivityCreated: "); - super.onActivityCreated(savedInstanceState); - mActivity = getActivity(); - initView(savedInstanceState, mContentView); - doBusiness(); - } - - @Override - public void onDestroyView() { - Log.d(TAG, "onDestroyView: "); - if (mContentView != null) { - ((ViewGroup) mContentView.getParent()).removeView(mContentView); - } - super.onDestroyView(); - } - - @Override - public void onDestroy() { - Log.d(TAG, "onDestroy: "); - super.onDestroy(); - } - - @Override - public void onSaveInstanceState(@NonNull Bundle outState) { - Log.d(TAG, "onSaveInstanceState: "); - super.onSaveInstanceState(outState); - outState.putBoolean(STATE_SAVE_IS_HIDDEN, isHidden()); - } - - private boolean isFastClick() { - long now = System.currentTimeMillis(); - if (now - lastClick >= 200) { - lastClick = now; - return false; - } - return true; - } - - @Override - public void onClick(View view) { - if (!isFastClick()) onWidgetClick(view); - } - - public T findViewById(@IdRes int id) { - if (mContentView == null) throw new NullPointerException("ContentView is null."); - return mContentView.findViewById(id); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/BaseLazyFragment.java b/app/src/main/java/com/blankj/androidutilcode/base/BaseLazyFragment.java deleted file mode 100644 index 05c88cc8e9..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/BaseLazyFragment.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.blankj.androidutilcode.base; - -import android.util.Log; - -/** - *
- *     author: blankj
- *     blog  : http://blankj.com
- *     time  : 2018/03/23
- *     desc  : base about lazy fragment
- * 
- */ -public abstract class BaseLazyFragment extends BaseFragment { - - private static final String TAG = "BaseLazyFragment"; - - private boolean isDataLoaded; - - public abstract void doLazyBusiness(); - - @Override - public void setUserVisibleHint(boolean isVisibleToUser) { - Log.d(TAG, "setUserVisibleHint: " + isVisibleToUser); - super.setUserVisibleHint(isVisibleToUser); - if (isVisibleToUser && mContentView != null && !isDataLoaded) { - doLazyBusiness(); - isDataLoaded = true; - } - } - - @Override - public void doBusiness() { - if (getUserVisibleHint()) { - doLazyBusiness(); - isDataLoaded = true; - } - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/IBaseView.java b/app/src/main/java/com/blankj/androidutilcode/base/IBaseView.java deleted file mode 100644 index 01e16c64fa..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/IBaseView.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.blankj.androidutilcode.base; - -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/06/27
- *     desc  :
- * 
- */ -interface IBaseView extends View.OnClickListener { - - /** - * 初始化数据 - * - * @param bundle 传递过来的 bundle - */ - void initData(@Nullable final Bundle bundle); - - /** - * 绑定布局 - * - * @return 布局 Id - */ - int bindLayout(); - - /** - * 初始化 view - */ - void initView(final Bundle savedInstanceState, final View contentView); - - /** - * 业务操作 - */ - void doBusiness(); - - /** - * 视图点击事件 - * - * @param view 视图 - */ - void onWidgetClick(final View view); -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/rv/BaseViewHolder.java b/app/src/main/java/com/blankj/androidutilcode/base/rv/BaseViewHolder.java deleted file mode 100644 index 2da4de8849..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/rv/BaseViewHolder.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.blankj.androidutilcode.base.rv; - -import android.support.annotation.IdRes; -import android.support.v7.widget.RecyclerView; -import android.util.SparseArray; -import android.view.View; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/08/22
- *     desc  :
- * 
- */ -public class BaseViewHolder extends RecyclerView.ViewHolder { - - private SparseArray viewArray = new SparseArray<>(); - - public BaseViewHolder(View itemView) { - super(itemView); - } - - @SuppressWarnings("unchecked") - public T getView(@IdRes final int viewId) { - View view = viewArray.get(viewId); - if (view == null) { - view = itemView.findViewById(viewId); - viewArray.put(viewId, view); - } - return (T) view; - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/rv/adapter/BaseAdapter.java b/app/src/main/java/com/blankj/androidutilcode/base/rv/adapter/BaseAdapter.java deleted file mode 100644 index 506ee91f48..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/rv/adapter/BaseAdapter.java +++ /dev/null @@ -1,198 +0,0 @@ -package com.blankj.androidutilcode.base.rv.adapter; - -import android.content.Context; -import android.support.annotation.LayoutRes; -import android.support.annotation.NonNull; -import android.support.v7.widget.RecyclerView; -import android.util.SparseArray; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; - -import com.blankj.androidutilcode.base.rv.BaseViewHolder; -import com.blankj.androidutilcode.base.rv.listener.OnItemClickListener; -import com.blankj.androidutilcode.base.rv.listener.OnItemLongClickListener; - -import java.util.List; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/08/22
- *     desc  :
- * 
- */ -public abstract class BaseAdapter extends RecyclerView.Adapter { - - protected static final int VIEW_TYPE_EMPTY = 0xfff0; - protected static final int VIEW_TYPE_HEADER = 0xfff1; - protected static final int VIEW_TYPE_FOOTER = 0xfff2; - protected static final int VIEW_TYPE_DEFAULT = 0xfff3; - - private final SparseArray mViewArray = new SparseArray<>(); - - protected List mData; - protected Context mContext; - protected ViewGroup mParent; - - protected LayoutInflater mInflater; - - private OnItemClickListener mClickListener; - private OnItemLongClickListener mLongClickListener; - - public void setData(@NonNull final List data) { - mData = data; - } - - @Override - public final int getItemViewType(int position) { - if (getDataSize() == 0 && mViewArray.get(VIEW_TYPE_EMPTY) != null) { - return VIEW_TYPE_EMPTY; - } else if (position == 0 && mViewArray.get(VIEW_TYPE_HEADER) != null) { - return VIEW_TYPE_HEADER; - } else if (position == getItemCount() - 1 && mViewArray.get(VIEW_TYPE_FOOTER) != null) { - return VIEW_TYPE_FOOTER; - } else { - return getCustomViewType(position); - } - } - - protected int getCustomViewType(final int position) { - return VIEW_TYPE_DEFAULT; - } - - protected abstract int bindLayout(final int viewType); - - @Override - public BaseViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { - if (mParent == null) { - mParent = parent; - mContext = parent.getContext(); - mInflater = LayoutInflater.from(mContext); - } - View itemView = mViewArray.get(viewType); - if (itemView == null) { - itemView = inflateLayout(bindLayout(viewType)); - } - return new BaseViewHolder(itemView); - } - - @Override - public final void onBindViewHolder(BaseViewHolder holder, int position) { - switch (holder.getItemViewType()) { - case VIEW_TYPE_EMPTY: - case VIEW_TYPE_HEADER: - case VIEW_TYPE_FOOTER: - break; - default: - bindCustomViewHolder(holder, position); - break; - } - } - - protected void bindCustomViewHolder(final BaseViewHolder holder, final int position) { - final int dataPos = position - (mViewArray.get(VIEW_TYPE_HEADER) == null ? 0 : 1); - holder.itemView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - if (mClickListener != null) { - mClickListener.onItemClick(v, dataPos); - } - } - }); - holder.itemView.setOnLongClickListener(new View.OnLongClickListener() { - @Override - public boolean onLongClick(View v) { - return mLongClickListener != null && mLongClickListener.onItemLongClick(v, dataPos); - } - }); - bind(holder, mData.get(dataPos)); - } - - protected abstract void bind(final BaseViewHolder holder, final M data); - - @Override - public int getItemCount() { - return getDataSize() + getExtraViewCount(); - } - - public void setEmptyView(@NonNull View emptyView) { - setView(VIEW_TYPE_EMPTY, emptyView); - } - - public View getEmptyView() { - return getView(VIEW_TYPE_EMPTY); - } - - public void removeEmptyView() { - removeView(VIEW_TYPE_EMPTY); - } - - public void setHeaderView(@NonNull View headerView) { - setView(VIEW_TYPE_HEADER, headerView); - } - - public View getHeaderView() { - return getView(VIEW_TYPE_HEADER); - } - - public void removeHeaderView() { - removeView(VIEW_TYPE_HEADER); - } - - public void setFooterView(@NonNull View footerView) { - setView(VIEW_TYPE_FOOTER, footerView); - } - - public View getFooterView() { - return getView(VIEW_TYPE_FOOTER); - } - - public void removeFooterView() { - removeView(VIEW_TYPE_FOOTER); - } - - private void setView(final int type, @NonNull final View view) { - mViewArray.put(type, view); - notifyDataSetChanged(); - } - - private View getView(final int type) { - return mViewArray.get(type); - } - - private void removeView(final int type) { - if (mViewArray.get(type) != null) { - mViewArray.delete(type); - notifyDataSetChanged(); - } - } - - private View inflateLayout(@LayoutRes final int layoutId) { - return mInflater.inflate(layoutId, mParent, false); - } - - private int getExtraViewCount() { - int extraViewCount = 0; - if (mViewArray.get(VIEW_TYPE_HEADER) != null) { - extraViewCount++; - } - if (mViewArray.get(VIEW_TYPE_FOOTER) != null) { - extraViewCount++; - } - return extraViewCount; - } - - public void setOnItemClickListener(final OnItemClickListener clickListener) { - mClickListener = clickListener; - } - - public void setOnItemLongClickListener(final OnItemLongClickListener longClickListener) { - mLongClickListener = longClickListener; - } - - private int getDataSize() { - return mData == null ? 0 : mData.size(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/rv/adapter/SingleAdapter.java b/app/src/main/java/com/blankj/androidutilcode/base/rv/adapter/SingleAdapter.java deleted file mode 100644 index 60e12c6514..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/rv/adapter/SingleAdapter.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.blankj.androidutilcode.base.rv.adapter; - -import android.support.annotation.LayoutRes; - -import java.util.List; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/08/22
- *     desc  :
- * 
- */ -public abstract class SingleAdapter extends BaseAdapter { - - private final int mLayoutId; - - public SingleAdapter(List list, @LayoutRes int layoutId) { - setData(list); - mLayoutId = layoutId; - } - - @Override - protected int bindLayout(final int viewType) { - return mLayoutId; - } - -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/rv/listener/OnItemClickListener.java b/app/src/main/java/com/blankj/androidutilcode/base/rv/listener/OnItemClickListener.java deleted file mode 100644 index f964cd210f..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/rv/listener/OnItemClickListener.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.blankj.androidutilcode.base.rv.listener; - -import android.view.View; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/08/21
- *     desc  :
- * 
- */ -public interface OnItemClickListener { - void onItemClick(final View view, final int position); -} diff --git a/app/src/main/java/com/blankj/androidutilcode/base/rv/listener/OnItemLongClickListener.java b/app/src/main/java/com/blankj/androidutilcode/base/rv/listener/OnItemLongClickListener.java deleted file mode 100644 index 5f065dc99c..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/base/rv/listener/OnItemLongClickListener.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.blankj.androidutilcode.base.rv.listener; - -import android.view.View; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/08/21
- *     desc  :
- * 
- */ -public interface OnItemLongClickListener { - boolean onItemLongClick(final View view, final int position); -} diff --git a/app/src/main/java/com/blankj/androidutilcode/data/DataManager.java b/app/src/main/java/com/blankj/androidutilcode/data/DataManager.java deleted file mode 100644 index 10699a5894..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/data/DataManager.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.blankj.androidutilcode.data; - -import com.blankj.utilcode.util.SPUtils; - -import java.util.Map; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/01/08
- *     desc  : manager about data
- * 
- */ -public class DataManager { - - private static final SPUtils SP_UTILS = SPUtils.getInstance("demo"); - - public static void putString() { - SP_UTILS.put("STRING", "string"); - } - - public static String getString() { - return SP_UTILS.getString("STRING"); - } - - public static void putInt() { - SP_UTILS.put("INT", 21); - } - - public static String getInt() { - return String.valueOf(SP_UTILS.getInt("INT")); - } - - public static void putLong() { - SP_UTILS.put("LONG", Long.MAX_VALUE); - } - - public static String getLong() { - return String.valueOf(SP_UTILS.getLong("LONG")); - } - - public static void putFloat() { - SP_UTILS.put("FLOAT", (float) Math.PI); - } - - public static String getFloat() { - return String.valueOf(SP_UTILS.getFloat("FLOAT")); - } - - public static void putBoolean() { - SP_UTILS.put("BOOLEAN", true); - } - - public static String getBoolean() { - return String.valueOf(SP_UTILS.getBoolean("BOOLEAN")); - } - - public static void clear() { - SP_UTILS.clear(); - } - - public static String sp2String() { - StringBuilder sb = new StringBuilder(); - Map map = SP_UTILS.getAll(); - for (Map.Entry entry : map.entrySet()) { - sb.append(entry.getKey()) - .append(": ") - .append(entry.getValue()) - .append("\n"); - } - return sb.toString(); - } - -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/CoreUtilActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/CoreUtilActivity.java deleted file mode 100644 index ce17ad7f4b..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/CoreUtilActivity.java +++ /dev/null @@ -1,177 +0,0 @@ -package com.blankj.androidutilcode.feature.core; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.androidutilcode.feature.core.activity.ActivityActivity; -import com.blankj.androidutilcode.feature.core.app.AppActivity; -import com.blankj.androidutilcode.feature.core.bar.BarActivity; -import com.blankj.androidutilcode.feature.core.clean.CleanActivity; -import com.blankj.androidutilcode.feature.core.device.DeviceActivity; -import com.blankj.androidutilcode.feature.core.fragment.FragmentActivity; -import com.blankj.androidutilcode.feature.core.image.ImageActivity; -import com.blankj.androidutilcode.feature.core.keyboard.KeyboardActivity; -import com.blankj.androidutilcode.feature.core.log.LogActivity; -import com.blankj.androidutilcode.feature.core.metaData.MetaDataActivity; -import com.blankj.androidutilcode.feature.core.network.NetworkActivity; -import com.blankj.androidutilcode.feature.core.path.PathActivity; -import com.blankj.androidutilcode.feature.core.permission.PermissionActivity; -import com.blankj.androidutilcode.feature.core.phone.PhoneActivity; -import com.blankj.androidutilcode.feature.core.process.ProcessActivity; -import com.blankj.androidutilcode.feature.core.reflect.ReflectActivity; -import com.blankj.androidutilcode.feature.core.resource.ResourceActivity; -import com.blankj.androidutilcode.feature.core.sdcard.SDCardActivity; -import com.blankj.androidutilcode.feature.core.snackbar.SnackbarActivity; -import com.blankj.androidutilcode.feature.core.sp.SPActivity; -import com.blankj.androidutilcode.feature.core.span.SpanActivity; -import com.blankj.androidutilcode.feature.core.toast.ToastActivity; -import com.blankj.utilcode.util.BusUtils; -import com.blankj.utilcode.util.Utils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/29
- *     desc  :
- * 
- */ -public class CoreUtilActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, CoreUtilActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_util_core; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - Utils.getApp(); - getToolBar().setTitle(getString(R.string.core_util)); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } - - public void coreUtilClick(View view) { - - } - - public void activityClick(View view) { - ActivityActivity.start(this); - } - - public void adaptScreenClick(View view) { - BusUtils.post("AdaptScreenActivity#start", this); -// AdaptScreenActivity.start(this); - } - - public void appClick(View view) { - AppActivity.start(this); - } - - public void barClick(View view) { - BarActivity.start(this); - } - - public void cleanClick(View view) { - CleanActivity.start(this); - } - - public void crashClick(View view) { - throw new NullPointerException("crash test"); - } - - public void deviceClick(View view) { - DeviceActivity.start(this); - } - - public void fragmentClick(View view) { - FragmentActivity.start(this); - } - - public void imageClick(View view) { - ImageActivity.start(this); - } - - public void keyboardClick(View view) { - KeyboardActivity.start(this); - } - - public void logClick(View view) { - LogActivity.start(this); - } - - public void metaDataClick(View view) { - MetaDataActivity.start(this); - } - - public void networkClick(View view) { - NetworkActivity.start(this); - } - - public void pathClick(View view) { - PathActivity.start(this); - } - - public void permissionClick(View view) { - PermissionActivity.start(this); - } - - public void phoneClick(View view) { - PhoneActivity.start(this); - } - - public void processClick(View view) { - ProcessActivity.start(this); - } - - public void reflectClick(View view) { - ReflectActivity.start(this); - } - - public void resourceClick(View view) { - ResourceActivity.start(this); - } - - public void sdcardClick(View view) { - SDCardActivity.start(this); - } - - public void snackbarClick(View view) { - SnackbarActivity.start(this); - } - - public void spClick(View view) { - SPActivity.start(this); - } - - public void spannableClick(View view) { - SpanActivity.start(this); - } - - public void toastClick(View view) { - ToastActivity.start(this); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/activity/ActivityActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/activity/ActivityActivity.java deleted file mode 100644 index 0e44bd818e..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/activity/ActivityActivity.java +++ /dev/null @@ -1,285 +0,0 @@ -package com.blankj.androidutilcode.feature.core.activity; - -import android.content.Context; -import android.content.Intent; -import android.graphics.Bitmap; -import android.graphics.drawable.BitmapDrawable; -import android.os.Build; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.app.ActivityOptionsCompat; -import android.view.View; -import android.view.Window; -import android.widget.ImageView; -import android.widget.TextView; - -import com.blankj.androidutilcode.Config; -import com.blankj.androidutilcode.MainActivity; -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.androidutilcode.feature.core.CoreUtilActivity; -import com.blankj.utilcode.util.ActivityUtils; -import com.blankj.utilcode.util.LogUtils; -import com.blankj.utilcode.util.SpanUtils; - -import java.util.Random; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about ActivityUtils
- * 
- */ -public class ActivityActivity extends BaseBackActivity { - - ImageView viewSharedElement; - Random random = new Random(); - private Bitmap bitmap; - private Intent intent; - private Intent[] intents = new Intent[2]; - - public static void start(Context context) { - Intent starter = new Intent(context, ActivityActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS); - } - return R.layout.activity_activity; - } - - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_activity)); - viewSharedElement = findViewById(R.id.view_shared_element); - findViewById(R.id.btn_clz).setOnClickListener(this); - findViewById(R.id.btn_clz_opt).setOnClickListener(this); - findViewById(R.id.btn_clz_anim).setOnClickListener(this); - findViewById(R.id.btn_act_clz).setOnClickListener(this); - findViewById(R.id.btn_act_clz_opt).setOnClickListener(this); - findViewById(R.id.btn_act_clz_shared_element).setOnClickListener(this); - findViewById(R.id.btn_act_clz_anim).setOnClickListener(this); - findViewById(R.id.btn_pkg_cls).setOnClickListener(this); - findViewById(R.id.btn_pkg_cls_opt).setOnClickListener(this); - findViewById(R.id.btn_pkg_cls_anim).setOnClickListener(this); - findViewById(R.id.btn_act_pkg_cls).setOnClickListener(this); - findViewById(R.id.btn_act_pkg_cls_opt).setOnClickListener(this); - findViewById(R.id.btn_act_pkg_cls_shared_element).setOnClickListener(this); - findViewById(R.id.btn_act_pkg_cls_anim).setOnClickListener(this); - findViewById(R.id.btn_intent).setOnClickListener(this); - findViewById(R.id.btn_intent_opt).setOnClickListener(this); - findViewById(R.id.btn_intent_shared_element).setOnClickListener(this); - findViewById(R.id.btn_intent_anim).setOnClickListener(this); - findViewById(R.id.btn_intents).setOnClickListener(this); - findViewById(R.id.btn_intents_opt).setOnClickListener(this); - findViewById(R.id.btn_intents_anim).setOnClickListener(this); - findViewById(R.id.btn_act_intents).setOnClickListener(this); - findViewById(R.id.btn_act_intents_opt).setOnClickListener(this); - findViewById(R.id.btn_act_intents_anim).setOnClickListener(this); - findViewById(R.id.btn_act_clz_shared_element).setOnClickListener(this); - findViewById(R.id.btn_start_home_activity).setOnClickListener(this); - findViewById(R.id.btn_finish_activity).setOnClickListener(this); - findViewById(R.id.btn_finish_to_activity).setOnClickListener(this); - findViewById(R.id.btn_finish_all_activities).setOnClickListener(this); - TextView tvAboutActivity = findViewById(R.id.tv_about_activity); - tvAboutActivity.setText(new SpanUtils() - .appendLine("isActivityExists: " + ActivityUtils.isActivityExists(Config.PKG, SubActivityActivity.class.getName())) - .appendLine("getLauncherActivity: " + ActivityUtils.getLauncherActivity(Config.PKG)) - .appendLine("getTopActivity: " + ActivityUtils.getTopActivity()) - .appendLine("isActivityExistsInStack: " + ActivityUtils.isActivityExistsInStack(CoreUtilActivity.class)) - .append("getActivityIcon: ") - .appendImage(ActivityUtils.getActivityIcon(this), SpanUtils.ALIGN_CENTER) - .appendLine() - .append("getActivityLogo: ") - .appendImage(ActivityUtils.getActivityLogo(this), SpanUtils.ALIGN_CENTER) - .create() - ); - bitmap = ((BitmapDrawable) viewSharedElement.getDrawable()).getBitmap(); - - intent = new Intent(this, SubActivityActivity.class); - intents[0] = intent; - intents[1] = new Intent(this, SubActivityActivity.class); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_clz: - ActivityUtils.startActivity(SubActivityActivity.class); - break; - case R.id.btn_clz_opt: - ActivityUtils.startActivity(SubActivityActivity.class, - getOption(random.nextInt(5))); - break; - case R.id.btn_clz_anim: - ActivityUtils.startActivity(SubActivityActivity.class, - R.anim.fade_in_1000, R.anim.fade_out_1000); - break; - case R.id.btn_act_clz: - ActivityUtils.startActivity(this, - SubActivityActivity.class); - break; - case R.id.btn_act_clz_opt: - ActivityUtils.startActivity(this, - SubActivityActivity.class, - getOption(random.nextInt(5))); - break; - - case R.id.btn_act_clz_shared_element: - ActivityUtils.startActivity(this, - SubActivityActivity.class, - viewSharedElement); - break; - case R.id.btn_act_clz_anim: - ActivityUtils.startActivity(this, - SubActivityActivity.class, - R.anim.fade_in_1000, R.anim.fade_out_1000); - break; - case R.id.btn_pkg_cls: - ActivityUtils.startActivity(this.getPackageName(), - SubActivityActivity.class.getName()); - break; - case R.id.btn_pkg_cls_opt: - ActivityUtils.startActivity(this.getPackageName(), - SubActivityActivity.class.getName(), - getOption(random.nextInt(5))); - break; - case R.id.btn_pkg_cls_anim: - ActivityUtils.startActivity(this.getPackageName(), - SubActivityActivity.class.getName(), - R.anim.fade_in_1000, R.anim.fade_out_1000); - break; - case R.id.btn_act_pkg_cls: - ActivityUtils.startActivity(this, - this.getPackageName(), - SubActivityActivity.class.getName()); - break; - case R.id.btn_act_pkg_cls_opt: - ActivityUtils.startActivity(this, - this.getPackageName(), - SubActivityActivity.class.getName(), - getOption(random.nextInt(5))); - break; - case R.id.btn_act_pkg_cls_shared_element: - ActivityUtils.startActivity(this, - this.getPackageName(), - SubActivityActivity.class.getName(), - viewSharedElement); - break; - case R.id.btn_act_pkg_cls_anim: - ActivityUtils.startActivity(this, - this.getPackageName(), - SubActivityActivity.class.getName(), - R.anim.fade_in_1000, R.anim.fade_out_1000); - break; - case R.id.btn_intent: - ActivityUtils.startActivity(this, - intent); - break; - case R.id.btn_intent_opt: - ActivityUtils.startActivity(this, - intent, - getOption(random.nextInt(5))); - break; - case R.id.btn_intent_shared_element: - ActivityUtils.startActivity(this, - intent, - viewSharedElement); - break; - case R.id.btn_intent_anim: - ActivityUtils.startActivity(this, - intent, - R.anim.fade_in_1000, R.anim.fade_out_1000); - break; - case R.id.btn_intents: - ActivityUtils.startActivities(intents); - break; - case R.id.btn_intents_opt: - ActivityUtils.startActivities(intents, - getOption(random.nextInt(5))); - break; - case R.id.btn_intents_anim: - ActivityUtils.startActivities(intents, - R.anim.fade_in_1000, R.anim.fade_out_1000); - break; - case R.id.btn_act_intents: - ActivityUtils.startActivities(this, - intents, - R.anim.fade_in_1000, R.anim.fade_out_1000); - break; - case R.id.btn_act_intents_opt: - ActivityUtils.startActivities(this, - intents, - getOption(random.nextInt(5))); - break; - case R.id.btn_act_intents_anim: - ActivityUtils.startActivities(this, - intents, - R.anim.fade_in_1000, R.anim.fade_out_1000); - break; - case R.id.btn_start_home_activity: - ActivityUtils.startHomeActivity(); - break; - case R.id.btn_finish_activity: - ActivityUtils.finishActivity(MainActivity.class); - break; - case R.id.btn_finish_to_activity: - ActivityUtils.finishToActivity(MainActivity.class, false, true); - break; - case R.id.btn_finish_all_activities: - ActivityUtils.finishAllActivities(); - break; - } - } - - private Bundle getOption(int type) { - LogUtils.d(type); - switch (type) { - case 0: - return ActivityOptionsCompat.makeCustomAnimation(this, - R.anim.slide_in_right_1000, - R.anim.slide_out_left_1000) - .toBundle(); - case 1: - return ActivityOptionsCompat.makeScaleUpAnimation(viewSharedElement, - viewSharedElement.getWidth() / 2, - viewSharedElement.getHeight() / 2, - 0, 0) - .toBundle(); - case 2: - return ActivityOptionsCompat.makeThumbnailScaleUpAnimation(viewSharedElement, - bitmap, - 0, 0) - .toBundle(); - case 3: - return ActivityOptionsCompat.makeSceneTransitionAnimation(this, - viewSharedElement, - getString(R.string.activity_shared_element)) - .toBundle(); - case 4: - return ActivityOptionsCompat.makeClipRevealAnimation(viewSharedElement, - viewSharedElement.getWidth() / 2, - viewSharedElement.getHeight() / 2, - 0, 0) - .toBundle(); - default: - return null; - } - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/activity/SubActivityActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/activity/SubActivityActivity.java deleted file mode 100644 index c1869269c4..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/activity/SubActivityActivity.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.blankj.androidutilcode.feature.core.activity; - -import android.graphics.Color; -import android.os.Build; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.app.ActivityCompat; -import android.view.View; -import android.view.Window; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; - -import java.util.Random; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about ActivityUtils
- * 
- */ -public class SubActivityActivity extends BaseBackActivity { - - Random random = new Random(); - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS); - } - return R.layout.activity_activity_sub; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - ((View) flActivityContainer.getParent()).setBackgroundColor(Color.rgb(random.nextInt(256), random.nextInt(256), random.nextInt(256))); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } - - @Override - protected void onDestroy() { - super.onDestroy(); - } - - @Override - public void onBackPressed() { - super.onBackPressed(); - ActivityCompat.finishAfterTransition(this); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/AdaptScreenActivity.kt b/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/AdaptScreenActivity.kt deleted file mode 100644 index def91c520d..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/AdaptScreenActivity.kt +++ /dev/null @@ -1,40 +0,0 @@ -package com.blankj.androidutilcode.feature.core.adaptScreen - -import android.content.Context -import android.content.Intent -import android.os.Bundle -import android.view.View -import com.blankj.androidutilcode.R -import com.blankj.androidutilcode.base.BaseBackActivity -import com.blankj.utilcode.util.BusUtils -import kotlinx.android.synthetic.main.activity_adapt_screen.* - -class AdaptScreenActivity : BaseBackActivity() { - - companion object { - @BusUtils.Subscribe(name = "AdaptScreenActivity#start") - fun start(context: Context) { - val starter = Intent(context, AdaptScreenActivity::class.java) - context.startActivity(starter) - } - } - - override fun initData(bundle: Bundle?) {} - - override fun bindLayout(): Int { - return R.layout.activity_adapt_screen; - } - - override fun initView(savedInstanceState: Bundle?, contentView: View?) { - adaptWidthBtn.setOnClickListener { WidthActivity.start(this) } - adaptHeightBtn.setOnClickListener { HeightActivity.start(this) } - closeAdaptBtn.setOnClickListener { - BusUtils.post("CloseAdaptActivity#start", this) -// CloseAdaptActivity.start(this) - } - } - - override fun doBusiness() {} - - override fun onWidgetClick(view: View?) {} -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/CloseAdaptActivity.kt b/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/CloseAdaptActivity.kt deleted file mode 100644 index 3afc855b87..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/CloseAdaptActivity.kt +++ /dev/null @@ -1,33 +0,0 @@ -package com.blankj.androidutilcode.feature.core.adaptScreen - -import android.content.Context -import android.content.Intent -import android.content.res.Resources -import android.os.Bundle -import android.support.v7.app.AppCompatActivity -import android.view.WindowManager -import com.blankj.androidutilcode.R -import com.blankj.utilcode.util.AdaptScreenUtils -import com.blankj.utilcode.util.BusUtils - -class CloseAdaptActivity : AppCompatActivity() { - - companion object Instance { - @JvmStatic - @BusUtils.Subscribe(name = "CloseAdaptActivity#start") - fun start(context: Context) { - val starter = Intent(context, CloseAdaptActivity::class.java) - context.startActivity(starter) - } - } - - override fun onCreate(savedInstanceState: Bundle?) { - window.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN) - super.onCreate(savedInstanceState) - setContentView(R.layout.activity_adapt_close) - } - - override fun getResources(): Resources { - return AdaptScreenUtils.closeAdapt(super.getResources()) - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/HeightActivity.kt b/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/HeightActivity.kt deleted file mode 100644 index dc38d45f18..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/HeightActivity.kt +++ /dev/null @@ -1,34 +0,0 @@ -package com.blankj.androidutilcode.feature.core.adaptScreen - -import android.content.Context -import android.content.Intent -import android.content.res.Resources -import android.graphics.Color -import android.os.Bundle -import android.support.v7.app.AppCompatActivity -import android.view.WindowManager -import com.blankj.androidutilcode.R -import com.blankj.utilcode.util.AdaptScreenUtils -import kotlinx.android.synthetic.main.activity_adapt_height.* - -class HeightActivity : AppCompatActivity() { - - companion object { - fun start(context: Context) { - val starter = Intent(context, HeightActivity::class.java) - context.startActivity(starter) - } - } - - override fun onCreate(savedInstanceState: Bundle?) { - window.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN) - super.onCreate(savedInstanceState) - setContentView(R.layout.activity_adapt_height) - - heightVebView.setBackgroundColor(Color.parseColor("#f0d26d")) - } - - override fun getResources(): Resources { - return AdaptScreenUtils.adaptHeight(super.getResources(), 1920) - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/WidthActivity.kt b/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/WidthActivity.kt deleted file mode 100644 index 38ce3edb07..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/adaptScreen/WidthActivity.kt +++ /dev/null @@ -1,34 +0,0 @@ -package com.blankj.androidutilcode.feature.core.adaptScreen - -import android.content.Context -import android.content.Intent -import android.content.res.Resources -import android.graphics.Color -import android.os.Bundle -import android.support.v7.app.AppCompatActivity -import android.view.WindowManager -import com.blankj.androidutilcode.R -import com.blankj.utilcode.util.AdaptScreenUtils -import kotlinx.android.synthetic.main.activity_adapt_width.* - -class WidthActivity : AppCompatActivity() { - - companion object { - fun start(context: Context) { - val starter = Intent(context, WidthActivity::class.java) - context.startActivity(starter) - } - } - - override fun onCreate(savedInstanceState: Bundle?) { - window.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN) - super.onCreate(savedInstanceState) - setContentView(R.layout.activity_adapt_width) - - widthVebView.setBackgroundColor(Color.parseColor("#f0d26d")) - } - - override fun getResources(): Resources { - return AdaptScreenUtils.adaptWidth(super.getResources(), 1080) - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/app/AppActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/app/AppActivity.java deleted file mode 100644 index 5a9762b9f7..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/app/AppActivity.java +++ /dev/null @@ -1,169 +0,0 @@ -package com.blankj.androidutilcode.feature.core.app; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.Config; -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.androidutilcode.helper.PermissionHelper; -import com.blankj.utilcode.util.AppUtils; -import com.blankj.utilcode.util.FileUtils; -import com.blankj.utilcode.util.LogUtils; -import com.blankj.utilcode.util.SpanUtils; -import com.blankj.utilcode.util.ToastUtils; -import com.blankj.utilcode.util.Utils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about AppUtils
- * 
- */ - -public class AppActivity extends BaseBackActivity { - - private final OnReleasedListener listener = new OnReleasedListener() { - @Override - public void onReleased() { - AppUtils.installApp(Config.TEST_APK_PATH); - } - }; - - public static void start(Context context) { - Intent starter = new Intent(context, AppActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - AppUtils.registerAppStatusChangedListener(this, new Utils.OnAppStatusChangedListener() { - @Override - public void onForeground() { - ToastUtils.showShort("foreground"); - } - - @Override - public void onBackground() { - ToastUtils.showShort("background"); - } - }); - } - - @Override - public int bindLayout() { - return R.layout.activity_app; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_app)); - - findViewById(R.id.btn_install_app).setOnClickListener(this); - findViewById(R.id.btn_install_app_silent).setOnClickListener(this); - findViewById(R.id.btn_uninstall_app).setOnClickListener(this); - findViewById(R.id.btn_uninstall_app_silent).setOnClickListener(this); - findViewById(R.id.btn_launch_app).setOnClickListener(this); - findViewById(R.id.btn_relaunch_app).setOnClickListener(this); - findViewById(R.id.btn_exit_app).setOnClickListener(this); - findViewById(R.id.btn_launch_app_details_settings).setOnClickListener(this); - TextView tvAboutApp = findViewById(R.id.tv_about_app); - tvAboutApp.setText(new SpanUtils() - .appendLine("isAppRoot: " + AppUtils.isAppRoot()) - .appendLine("isAppDebug: " + AppUtils.isAppDebug()) - .appendLine("isAppSystem: " + AppUtils.isAppSystem()) - .appendLine("isAppForeground: " + AppUtils.isAppForeground()) - .append("getAppIcon: ").appendImage(AppUtils.getAppIcon(), SpanUtils.ALIGN_CENTER) - .appendLine() - .appendLine("getAppPackageName: " + AppUtils.getAppPackageName()) - .appendLine("getAppName: " + AppUtils.getAppName()) - .appendLine("getAppPath: " + AppUtils.getAppPath()) - .appendLine("getAppVersionName: " + AppUtils.getAppVersionName()) - .appendLine("getAppVersionCode: " + AppUtils.getAppVersionCode()) - .appendLine("getAppSignatureSHA1: " + AppUtils.getAppSignatureSHA1()) - .appendLine("getAppSignatureSHA256: " + AppUtils.getAppSignatureSHA256()) - .append("getAppSignatureMD5: " + AppUtils.getAppSignatureMD5()) - .create()); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_install_app: - if (AppUtils.isAppInstalled(Config.TEST_PKG)) { - ToastUtils.showShort(R.string.app_install_tips); - } else { - PermissionHelper.requestStorage(new PermissionHelper.OnPermissionGrantedListener() { - @Override - public void onPermissionGranted() { - if (!FileUtils.isFileExists(Config.TEST_APK_PATH)) { - new ReleaseInstallApkTask(listener).execute(); - } else { - listener.onReleased(); - LogUtils.d("test apk existed."); - } - } - }); - } - break; - case R.id.btn_install_app_silent: - if (AppUtils.isAppInstalled(Config.TEST_PKG)) { - ToastUtils.showShort(R.string.app_install_tips); - } else { - if (AppUtils.installAppSilent(Config.TEST_APK_PATH)) { - ToastUtils.showShort(R.string.install_successfully); - } else { - ToastUtils.showShort(R.string.install_unsuccessfully); - } - } - break; - case R.id.btn_uninstall_app: - if (AppUtils.isAppInstalled(Config.TEST_PKG)) { - AppUtils.uninstallApp(Config.TEST_PKG); - } else { - ToastUtils.showShort(R.string.app_uninstall_tips); - } - break; - case R.id.btn_uninstall_app_silent: - if (AppUtils.isAppInstalled(Config.TEST_PKG)) { - if (AppUtils.uninstallAppSilent(Config.TEST_PKG, false)) { - ToastUtils.showShort(R.string.uninstall_successfully); - } else { - ToastUtils.showShort(R.string.uninstall_unsuccessfully); - } - } else { - ToastUtils.showShort(R.string.app_uninstall_tips); - } - break; - case R.id.btn_launch_app: - AppUtils.launchApp(this.getPackageName()); - break; - case R.id.btn_relaunch_app: - AppUtils.relaunchApp(); - break; - case R.id.btn_launch_app_details_settings: - AppUtils.launchAppDetailsSettings(); - break; - case R.id.btn_exit_app: - AppUtils.exitApp(); - break; - } - } - - @Override - protected void onDestroy() { - AppUtils.unregisterAppStatusChangedListener(this); - super.onDestroy(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/app/OnReleasedListener.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/app/OnReleasedListener.java deleted file mode 100644 index 4e935b28c9..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/app/OnReleasedListener.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.blankj.androidutilcode.feature.core.app; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/05/23
- *     desc  :
- * 
- */ -public interface OnReleasedListener { - void onReleased(); -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/app/ReleaseInstallApkTask.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/app/ReleaseInstallApkTask.java deleted file mode 100644 index 8bc28dd54b..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/app/ReleaseInstallApkTask.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.blankj.androidutilcode.feature.core.app; - -import com.blankj.androidutilcode.Config; -import com.blankj.utilcode.util.ResourceUtils; -import com.blankj.utilcode.util.ThreadUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/05/23
- *     desc  :
- * 
- */ -public class ReleaseInstallApkTask extends ThreadUtils.SimpleTask { - - private OnReleasedListener mListener; - - public ReleaseInstallApkTask(final OnReleasedListener listener) { - mListener = listener; - } - - @Override - public Void doInBackground() { - ResourceUtils.copyFileFromAssets("test_install", Config.TEST_APK_PATH); - return null; - } - - @Override - public void onSuccess(Void result) { - if (mListener != null) { - mListener.onReleased(); - } - } - - public void execute() { - ThreadUtils.executeByIo(this); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarActivity.java deleted file mode 100644 index 4c665a4f6f..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarActivity.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/05/27
- *     desc  : demo about BarUtils
- * 
- */ -public class BarActivity extends BaseBackActivity { - - private TextView tvAboutStatus; - - public static void start(Context context) { - Intent starter = new Intent(context, BarActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_bar; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_bar)); - - tvAboutStatus = findViewById(R.id.tv_about_status); - findViewById(R.id.btn_status_bar).setOnClickListener(this); - findViewById(R.id.btn_status_bar_color).setOnClickListener(this); - findViewById(R.id.btn_status_bar_alpha).setOnClickListener(this); - findViewById(R.id.btn_status_bar_image_view).setOnClickListener(this); - findViewById(R.id.btn_status_bar_fragment).setOnClickListener(this); - findViewById(R.id.btn_status_bar_swipe_back).setOnClickListener(this); - findViewById(R.id.btn_status_bar_drawer).setOnClickListener(this); - findViewById(R.id.btn_notification_bar).setOnClickListener(this); - findViewById(R.id.btn_nav_bar).setOnClickListener(this); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_status_bar: - BarStatusActivity.start(this); - break; - case R.id.btn_status_bar_color: - BarStatusColorActivity.start(this); - break; - case R.id.btn_status_bar_alpha: - BarStatusAlphaActivity.start(this); - break; - case R.id.btn_status_bar_image_view: - BarStatusImageViewActivity.start(this); - break; - case R.id.btn_status_bar_fragment: - BarStatusFragmentActivity.start(this); - break; - case R.id.btn_status_bar_swipe_back: - BarStatusSwipeBackActivity.start(this); - break; - case R.id.btn_status_bar_drawer: - BarStatusDrawerActivity.start(this); - break; - case R.id.btn_notification_bar: - BarNotificationActivity.start(this); - break; - case R.id.btn_nav_bar: - BarNavActivity.start(this); - break; - } - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarNavActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarNavActivity.java deleted file mode 100644 index 1ac209da61..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarNavActivity.java +++ /dev/null @@ -1,114 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.graphics.Color; -import android.os.Build; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.annotation.RequiresApi; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.BarUtils; -import com.blankj.utilcode.util.SpanUtils; - -import java.util.Random; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about BarUtils
- * 
- */ -public class BarNavActivity extends BaseBackActivity { - - private Random random = new Random(); - - private TextView tvAboutNav; - - public static void start(Context context) { - Intent starter = new Intent(context, BarNavActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_bar_nav; - } - - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - rootLayout.setBackgroundColor(Color.GRAY); - getToolBar().setTitle(getString(R.string.demo_bar)); - - tvAboutNav = findViewById(R.id.tv_about_nav); - findViewById(R.id.btn_nav_show).setOnClickListener(this); - findViewById(R.id.btn_nav_hide).setOnClickListener(this); - findViewById(R.id.btn_nav_set_color).setOnClickListener(this); - updateAboutNav(); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_nav_show: - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { - BarUtils.setNavBarVisibility(this, true); - } - break; - case R.id.btn_nav_hide: - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { - BarUtils.setNavBarVisibility(this, false); - } - break; - case R.id.btn_nav_set_color: - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - BarUtils.setNavBarColor(this, Color.argb(random.nextInt(256), random.nextInt(256), random.nextInt(256), random.nextInt(256))); - } - break; - } - updateAboutNav(); - } - - private void updateAboutNav() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - tvAboutNav.setText(new SpanUtils() - .appendLine("navHeight: " + BarUtils.getNavBarHeight()) - .appendLine("isNavBarVisible: " + BarUtils.isNavBarVisible(this)) - .appendLine("getNavBarColor: #" + Integer.toHexString(BarUtils.getNavBarColor(this))) - .append("isSupportNavBar: " + BarUtils.isSupportNavBar()) - .create() - ); - } else { - tvAboutNav.setText(new SpanUtils() - .appendLine("navHeight: " + BarUtils.getNavBarHeight()) - .appendLine("isNavBarVisible: " + BarUtils.isNavBarVisible(this)) - .append("isSupportNavBar: " + BarUtils.isSupportNavBar()) - .create() - ); - } - } - - @RequiresApi(api = Build.VERSION_CODES.KITKAT) - @Override - public void onWindowFocusChanged(boolean hasFocus) { - super.onWindowFocusChanged(hasFocus); - BarUtils.setNavBarVisibility(this, BarUtils.isNavBarVisible(this)); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarNotificationActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarNotificationActivity.java deleted file mode 100644 index 6cfecb221c..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarNotificationActivity.java +++ /dev/null @@ -1,74 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.os.Handler; -import android.support.annotation.Nullable; -import android.view.View; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.BarUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about BarUtils
- * 
- */ -public class BarNotificationActivity extends BaseBackActivity { - - private Handler mHandler = new Handler(); - - public static void start(Context context) { - Intent starter = new Intent(context, BarNotificationActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_bar_notification; - } - - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_bar)); - - findViewById(R.id.btn_show_notification).setOnClickListener(this); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_show_notification: - BarUtils.setNotificationBarVisibility(true); - mHandler.postDelayed(new Runnable() { - @Override - public void run() { - BarUtils.setNotificationBarVisibility(false); - } - }, 2000); - break; - } - } - - @Override - protected void onDestroy() { - super.onDestroy(); - mHandler.removeCallbacksAndMessages(null); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusActivity.java deleted file mode 100644 index 9b5fd56891..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusActivity.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.BarUtils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusActivity extends BaseBackActivity { - - private TextView tvAboutStatus; - - public static void start(Context context) { - Intent starter = new Intent(context, BarStatusActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_bar_status; - } - - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_bar)); - - tvAboutStatus = findViewById(R.id.tv_about_status); - findViewById(R.id.btn_show_status).setOnClickListener(this); - findViewById(R.id.btn_hide_status).setOnClickListener(this); - findViewById(R.id.btn_light_mode).setOnClickListener(this); - findViewById(R.id.btn_dark_mode).setOnClickListener(this); - updateAboutStatus(); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_show_status: - BarUtils.setStatusBarVisibility(this, true); - break; - case R.id.btn_hide_status: - BarUtils.setStatusBarVisibility(this, false); - break; - case R.id.btn_light_mode: - BarUtils.setStatusBarLightMode(this, true); - break; - case R.id.btn_dark_mode: - BarUtils.setStatusBarLightMode(this, false); - break; - } - updateAboutStatus(); - } - - private void updateAboutStatus() { - tvAboutStatus.setText(new SpanUtils() - .appendLine("statusHeight: " + BarUtils.getStatusBarHeight()) - .append("isStatusVisible: " + BarUtils.isStatusBarVisible(this)) - .create()); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusAlphaActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusAlphaActivity.java deleted file mode 100644 index 4bf4e3c2b4..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusAlphaActivity.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.SeekBar; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseActivity; -import com.blankj.utilcode.util.BarUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/05/27
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusAlphaActivity extends BaseActivity { - - private int mAlpha; - - private TextView mTvStatusAlpha; - private SeekBar sbChangeAlpha; - - public static void start(Context context) { - Intent starter = new Intent(context, BarStatusAlphaActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - mAlpha = 112; - } - - @Override - public int bindLayout() { - return R.layout.activity_bar_status_alpha; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - findViewById(R.id.btn_set_transparent).setOnClickListener(this); - mTvStatusAlpha = findViewById(R.id.tv_status_alpha); - sbChangeAlpha = findViewById(R.id.sb_change_alpha); - sbChangeAlpha.setOnSeekBarChangeListener(translucentListener); - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - - updateStatusBar(); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_set_transparent: - sbChangeAlpha.setProgress(0); - break; - } - } - - private SeekBar.OnSeekBarChangeListener translucentListener = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - mAlpha = progress; - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - updateStatusBar(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - private void updateStatusBar() { - BarUtils.setStatusBarAlpha(BarStatusAlphaActivity.this, mAlpha); - BarUtils.addMarginTopEqualStatusBarHeight(mTvStatusAlpha);// 其实这个只需要调用一次即可 - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusAlphaFragment.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusAlphaFragment.java deleted file mode 100644 index 3c430c3ffd..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusAlphaFragment.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.SeekBar; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseLazyFragment; -import com.blankj.utilcode.util.BarUtils; -import com.blankj.utilcode.util.LogUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/07/01
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusAlphaFragment extends BaseLazyFragment { - - private int mAlpha; - - private TextView mTvStatusAlpha; - private SeekBar sbChangeAlpha; - private View fakeStatusBar; - - - public static BarStatusAlphaFragment newInstance() { - return new BarStatusAlphaFragment(); - } - - @Override - public void initData(@Nullable Bundle bundle) { - mAlpha = 112; - } - - @Override - public int bindLayout() { - return R.layout.fragment_bar_status_alpha; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - fakeStatusBar = findViewById(R.id.fake_status_bar); - mTvStatusAlpha = findViewById(R.id.tv_status_alpha); - sbChangeAlpha = findViewById(R.id.sb_change_alpha); - findViewById(R.id.btn_set_transparent).setOnClickListener(this); - sbChangeAlpha.setOnSeekBarChangeListener(translucentListener); - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - - updateFakeStatusBar(); - } - - @Override - public void doLazyBusiness() { - LogUtils.d("doLazyBusiness() called"); - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_set_transparent: - sbChangeAlpha.setProgress(0); - break; - } - } - - private SeekBar.OnSeekBarChangeListener translucentListener = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - mAlpha = progress; - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - updateFakeStatusBar(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - public void updateFakeStatusBar() { - BarUtils.setStatusBarAlpha(fakeStatusBar, mAlpha); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusColorActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusColorActivity.java deleted file mode 100644 index bd978c2f9a..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusColorActivity.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.content.ContextCompat; -import android.view.View; -import android.widget.SeekBar; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.UtilsApp; -import com.blankj.androidutilcode.base.BaseActivity; -import com.blankj.utilcode.util.BarUtils; - -import java.util.Random; - - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/05/27
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusColorActivity extends BaseActivity { - - private Random mRandom; - private int mColor; - private int mAlpha; - - private TextView mTvStatusAlpha; - private SeekBar sbChangeAlpha; - - public static void start(Context context) { - Intent starter = new Intent(context, BarStatusColorActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - mRandom = new Random(); - mColor = ContextCompat.getColor(UtilsApp.getInstance(), R.color.colorPrimary); - mAlpha = 112; - } - - @Override - public int bindLayout() { - return R.layout.activity_bar_status_color; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - findViewById(R.id.btn_random_color).setOnClickListener(this); - findViewById(R.id.btn_set_transparent).setOnClickListener(this); - mTvStatusAlpha = findViewById(R.id.tv_status_alpha); - sbChangeAlpha = findViewById(R.id.sb_change_alpha); - sbChangeAlpha.setOnSeekBarChangeListener(colorListener); - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - - updateStatusBar(); - } - - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_random_color: - mColor = 0xff000000 | mRandom.nextInt(0xffffff); - updateStatusBar(); - break; - case R.id.btn_set_transparent: - sbChangeAlpha.setProgress(0); - break; - } - } - - private SeekBar.OnSeekBarChangeListener colorListener = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - mAlpha = progress; - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - updateStatusBar(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - private void updateStatusBar() { - BarUtils.setStatusBarColor(this, mColor, mAlpha); - BarUtils.addMarginTopEqualStatusBarHeight(mTvStatusAlpha);// 其实这个只需要调用一次即可 - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusColorFragment.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusColorFragment.java deleted file mode 100644 index c0c6a6faf7..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusColorFragment.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.content.ContextCompat; -import android.view.View; -import android.widget.SeekBar; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.UtilsApp; -import com.blankj.androidutilcode.base.BaseLazyFragment; -import com.blankj.utilcode.util.BarUtils; -import com.blankj.utilcode.util.LogUtils; - -import java.util.Random; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/07/01
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusColorFragment extends BaseLazyFragment { - - private Random mRandom; - private int mColor; - private int mAlpha; - - private TextView mTvStatusAlpha; - private SeekBar sbChangeAlpha; - private View fakeStatusBar; - - public static BarStatusColorFragment newInstance() { - return new BarStatusColorFragment(); - } - - @Override - public void initData(@Nullable Bundle bundle) { - mRandom = new Random(); - mColor = ContextCompat.getColor(UtilsApp.getInstance(), R.color.colorPrimary); - mAlpha = 112; - } - - @Override - public int bindLayout() { - return R.layout.fragment_bar_status_color; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - fakeStatusBar = findViewById(R.id.fake_status_bar); - findViewById(R.id.btn_random_color).setOnClickListener(this); - findViewById(R.id.btn_set_transparent).setOnClickListener(this); - mTvStatusAlpha = findViewById(R.id.tv_status_alpha); - sbChangeAlpha = findViewById(R.id.sb_change_alpha); - sbChangeAlpha.setOnSeekBarChangeListener(colorListener); - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - - updateFakeStatusBar(); - } - - - @Override - public void doLazyBusiness() { - LogUtils.d("doLazyBusiness() called"); - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_random_color: - mColor = 0xff000000 | mRandom.nextInt(0xffffff); - updateFakeStatusBar(); - break; - case R.id.btn_set_transparent: - sbChangeAlpha.setProgress(0); - break; - } - } - - private SeekBar.OnSeekBarChangeListener colorListener = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - mAlpha = progress; - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - updateFakeStatusBar(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - public void updateFakeStatusBar() { - BarUtils.setStatusBarColor(fakeStatusBar, mColor, mAlpha); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusCustomFragment.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusCustomFragment.java deleted file mode 100644 index 0d4b58cfc2..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusCustomFragment.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseLazyFragment; -import com.blankj.utilcode.util.BarUtils; -import com.blankj.utilcode.util.LogUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/07/01
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusCustomFragment extends BaseLazyFragment { - - private View fakeStatusBar; - - - public static BarStatusCustomFragment newInstance() { - return new BarStatusCustomFragment(); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.fragment_bar_status_custom; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - BarUtils.setStatusBarCustom(findViewById(R.id.fake_status_bar)); - } - - @Override - public void doLazyBusiness() { - LogUtils.d("doLazyBusiness() called"); - } - - @Override - public void onWidgetClick(View view) { - - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusDrawerActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusDrawerActivity.java deleted file mode 100644 index 5061099277..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusDrawerActivity.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.graphics.Color; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.content.ContextCompat; -import android.view.View; -import android.widget.Button; -import android.widget.CheckBox; -import android.widget.CompoundButton; -import android.widget.SeekBar; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.UtilsApp; -import com.blankj.androidutilcode.base.BaseDrawerActivity; -import com.blankj.utilcode.util.BarUtils; - -import java.util.Random; - - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/05/27
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusDrawerActivity extends BaseDrawerActivity { - - private Random mRandom; - private int mColor; - private int mAlpha; - - private View fakeStatusBar; - private CheckBox cbAlpha; - private CheckBox cbFront; - private TextView tvStatusAlpha; - private SeekBar sbChangeAlpha; - private Button btnRandomColor; - - public static void start(Context context) { - Intent starter = new Intent(context, BarStatusDrawerActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - mRandom = new Random(); - mColor = ContextCompat.getColor(UtilsApp.getInstance(), R.color.colorPrimary); - mAlpha = 112; - } - - @Override - public int bindLayout() { - return R.layout.activity_bar_status_drawer; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - fakeStatusBar = findViewById(R.id.fake_status_bar); - cbAlpha = findViewById(R.id.cb_alpha); - cbFront = findViewById(R.id.cb_front); - btnRandomColor = findViewById(R.id.btn_random_color); - tvStatusAlpha = findViewById(R.id.tv_status_alpha); - sbChangeAlpha = findViewById(R.id.sb_change_alpha); - - cbAlpha.setOnCheckedChangeListener(mAlphaCheckedChangeListener); - cbFront.setOnCheckedChangeListener(mFrontCheckedChangeListener); - btnRandomColor.setOnClickListener(this); - findViewById(R.id.btn_set_transparent).setOnClickListener(this); - sbChangeAlpha.setOnSeekBarChangeListener(mColorListener); - - tvStatusAlpha.setText(String.valueOf(mAlpha)); - - updateStatusBar(); - } - - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_random_color: - mColor = 0xff000000 | mRandom.nextInt(0xffffff); - updateStatusBar(); - break; - case R.id.btn_set_transparent: - sbChangeAlpha.setProgress(0); - break; - } - } - - private SeekBar.OnSeekBarChangeListener mColorListener = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - mAlpha = progress; - tvStatusAlpha.setText(String.valueOf(mAlpha)); - updateStatusBar(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - CompoundButton.OnCheckedChangeListener mAlphaCheckedChangeListener = new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - if (isChecked) { - btnRandomColor.setVisibility(View.GONE); - flActivityContainer.setBackgroundResource(R.drawable.bar_status_alpha_bg); - } else { - btnRandomColor.setVisibility(View.VISIBLE); - flActivityContainer.setBackgroundColor(Color.WHITE); - } - updateStatusBar(); - } - }; - - CompoundButton.OnCheckedChangeListener mFrontCheckedChangeListener = new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - updateStatusBar(); - } - }; - - private void updateStatusBar() { - if (cbAlpha.isChecked()) { - BarUtils.setStatusBarAlpha4Drawer(BarStatusDrawerActivity.this, rootLayout, fakeStatusBar, mAlpha, cbFront.isChecked()); - } else { - BarUtils.setStatusBarColor4Drawer(BarStatusDrawerActivity.this, rootLayout, fakeStatusBar, mColor, mAlpha, cbFront.isChecked()); - } - BarUtils.addMarginTopEqualStatusBarHeight(cbAlpha);// 其实这个只需要调用一次即可 - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusFragmentActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusFragmentActivity.java deleted file mode 100644 index 4d4285697d..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusFragmentActivity.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.design.widget.BottomNavigationView; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentPagerAdapter; -import android.support.v4.view.ViewPager; -import android.view.MenuItem; -import android.view.View; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseActivity; - -import java.util.ArrayList; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/05/27
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusFragmentActivity extends BaseActivity { - - private int[] itemIds = new int[]{ - R.id.navigation_color, - R.id.navigation_alpha, - R.id.navigation_image_view, - R.id.navigation_custom - }; - - private ViewPager mVpStatusBar; - private BottomNavigationView navigation; - private ArrayList mFragmentList = new ArrayList<>(); - - public static void start(Context context) { - Intent starter = new Intent(context, BarStatusFragmentActivity.class); - context.startActivity(starter); - } - - @Override - public Intent getIntent() { - return super.getIntent(); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_bar_status_fragment; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - mVpStatusBar = findViewById(R.id.vp_status_bar); - navigation = findViewById(R.id.navigation_status_bar); - - mFragmentList.add(BarStatusColorFragment.newInstance()); - mFragmentList.add(BarStatusAlphaFragment.newInstance()); - mFragmentList.add(BarStatusImageViewFragment.newInstance()); - mFragmentList.add(BarStatusCustomFragment.newInstance()); - - mVpStatusBar.setOffscreenPageLimit(3); - mVpStatusBar.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) { - @Override - public Fragment getItem(int position) { - return mFragmentList.get(position); - } - - @Override - public int getCount() { - return mFragmentList.size(); - } - }); - - mVpStatusBar.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { - @Override - public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { - - } - - @Override - public void onPageSelected(int position) { - navigation.setSelectedItemId(itemIds[position]); - } - - @Override - public void onPageScrollStateChanged(int state) { - - } - }); - - navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } - - private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener - = new BottomNavigationView.OnNavigationItemSelectedListener() { - - @Override - public boolean onNavigationItemSelected(@NonNull MenuItem item) { - switch (item.getItemId()) { - case R.id.navigation_color: - mVpStatusBar.setCurrentItem(0); - return true; - case R.id.navigation_alpha: - mVpStatusBar.setCurrentItem(1); - return true; - case R.id.navigation_image_view: - mVpStatusBar.setCurrentItem(2); - return true; - case R.id.navigation_custom: - mVpStatusBar.setCurrentItem(3); - return true; - } - return false; - } - }; -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusImageViewActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusImageViewActivity.java deleted file mode 100644 index d422f2f1e6..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusImageViewActivity.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.SeekBar; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseActivity; -import com.blankj.utilcode.util.BarUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/05/27
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusImageViewActivity extends BaseActivity { - - private int mAlpha; - - private TextView mTvStatusAlpha; - private SeekBar sbChangeAlpha; - - public static void start(Context context) { - Intent starter = new Intent(context, BarStatusImageViewActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - mAlpha = 112; - } - - @Override - public int bindLayout() { - return R.layout.activity_bar_status_image_view; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - findViewById(R.id.btn_set_transparent).setOnClickListener(this); - mTvStatusAlpha = findViewById(R.id.tv_status_alpha); - sbChangeAlpha = findViewById(R.id.sb_change_alpha); - sbChangeAlpha.setOnSeekBarChangeListener(translucentListener); - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - - updateStatusBar(); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_set_transparent: - sbChangeAlpha.setProgress(0); - break; - } - } - - private SeekBar.OnSeekBarChangeListener translucentListener = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - mAlpha = progress; - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - updateStatusBar(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - private void updateStatusBar() { - BarUtils.setStatusBarAlpha(BarStatusImageViewActivity.this, mAlpha, true); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusImageViewFragment.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusImageViewFragment.java deleted file mode 100644 index 7f81597156..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusImageViewFragment.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.SeekBar; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseLazyFragment; -import com.blankj.utilcode.util.BarUtils; -import com.blankj.utilcode.util.LogUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/07/01
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusImageViewFragment extends BaseLazyFragment { - - private int mAlpha; - - private TextView mTvStatusAlpha; - private SeekBar sbChangeAlpha; - private View fakeStatusBar; - - public static BarStatusImageViewFragment newInstance() { - return new BarStatusImageViewFragment(); - } - - @Override - public void initData(@Nullable Bundle bundle) { - mAlpha = 112; - } - - @Override - public int bindLayout() { - return R.layout.fragment_bar_status_image_view; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - fakeStatusBar = findViewById(R.id.fake_status_bar); - mTvStatusAlpha = findViewById(R.id.tv_status_alpha); - sbChangeAlpha = findViewById(R.id.sb_change_alpha); - findViewById(R.id.btn_set_transparent).setOnClickListener(this); - sbChangeAlpha.setOnSeekBarChangeListener(translucentListener); - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - - updateFakeStatusBar(); - } - - @Override - public void doLazyBusiness() { - LogUtils.d("doLazyBusiness() called"); - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_set_transparent: - sbChangeAlpha.setProgress(0); - break; - } - } - - private SeekBar.OnSeekBarChangeListener translucentListener = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - mAlpha = progress; - mTvStatusAlpha.setText(String.valueOf(mAlpha)); - updateFakeStatusBar(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - public void updateFakeStatusBar() { - BarUtils.setStatusBarAlpha(fakeStatusBar, mAlpha); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusSwipeBackActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusSwipeBackActivity.java deleted file mode 100644 index df95f8f26d..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/bar/BarStatusSwipeBackActivity.java +++ /dev/null @@ -1,144 +0,0 @@ -package com.blankj.androidutilcode.feature.core.bar; - -import android.content.Context; -import android.content.Intent; -import android.graphics.Color; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.content.ContextCompat; -import android.view.View; -import android.widget.Button; -import android.widget.CheckBox; -import android.widget.CompoundButton; -import android.widget.LinearLayout; -import android.widget.SeekBar; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.UtilsApp; -import com.blankj.androidutilcode.base.BaseActivity; -import com.blankj.utilcode.util.BarUtils; -import com.r0adkll.slidr.Slidr; - -import java.util.Random; - - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/05/27
- *     desc  : demo about BarUtils
- * 
- */ -public class BarStatusSwipeBackActivity extends BaseActivity { - - private Random mRandom; - private int mColor; - private int mAlpha; - - private LinearLayout llContainer; - private CheckBox cbAlpha; - private TextView tvStatusAlpha; - private SeekBar sbChangeAlpha; - private Button btnRandomColor; - - public static void start(Context context) { - Intent starter = new Intent(context, BarStatusSwipeBackActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - mRandom = new Random(); - mColor = ContextCompat.getColor(UtilsApp.getInstance(), R.color.colorPrimary); - mAlpha = 112; - } - - @Override - public int bindLayout() { - return R.layout.activity_bar_status_swipe_back; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - Slidr.attach(this); - - llContainer = findViewById(R.id.ll_container); - cbAlpha = findViewById(R.id.cb_alpha); - btnRandomColor = findViewById(R.id.btn_random_color); - tvStatusAlpha = findViewById(R.id.tv_status_alpha); - sbChangeAlpha = findViewById(R.id.sb_change_alpha); - - cbAlpha.setOnCheckedChangeListener(mCheckedChangeListener); - btnRandomColor.setOnClickListener(this); - findViewById(R.id.btn_set_transparent).setOnClickListener(this); - sbChangeAlpha.setOnSeekBarChangeListener(mColorListener); - - tvStatusAlpha.setText(String.valueOf(mAlpha)); - - updateStatusBar(); - } - - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_random_color: - mColor = 0xff000000 | mRandom.nextInt(0xffffff); - updateStatusBar(); - break; - case R.id.btn_set_transparent: - sbChangeAlpha.setProgress(0); - break; - } - } - - private SeekBar.OnSeekBarChangeListener mColorListener = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - mAlpha = progress; - tvStatusAlpha.setText(String.valueOf(mAlpha)); - updateStatusBar(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - CompoundButton.OnCheckedChangeListener mCheckedChangeListener = new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - if (isChecked) { - btnRandomColor.setVisibility(View.GONE); - llContainer.setBackgroundResource(R.drawable.bar_status_alpha_bg); - } else { - btnRandomColor.setVisibility(View.VISIBLE); - llContainer.setBackgroundColor(Color.WHITE); - } - updateStatusBar(); - } - }; - - private void updateStatusBar() { - if (cbAlpha.isChecked()) { - BarUtils.setStatusBarAlpha(this, mAlpha); - BarUtils.addMarginTopEqualStatusBarHeight(cbAlpha); - } else { - BarUtils.setStatusBarColor(this, mColor, mAlpha); - BarUtils.addMarginTopEqualStatusBarHeight(cbAlpha); - } - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/clean/CleanActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/clean/CleanActivity.java deleted file mode 100644 index b066801ede..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/clean/CleanActivity.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.blankj.androidutilcode.feature.core.clean; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.os.Environment; -import android.support.annotation.Nullable; -import android.view.View; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.CleanUtils; -import com.blankj.utilcode.util.SnackbarUtils; - -import java.io.File; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/29
- *     desc  : demo about CleanUtils
- * 
- */ -public class CleanActivity extends BaseBackActivity { - - private View snackBarRootView; - private String internalCachePath; - private String internalFilesPath; - private String internalDbs; - private String internalSp; - private String externalCache; - - public static void start(Context context) { - Intent starter = new Intent(context, CleanActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_clean; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_clean)); - - snackBarRootView = findViewById(android.R.id.content); - findViewById(R.id.btn_clean_internal_cache).setOnClickListener(this); - findViewById(R.id.btn_clean_internal_files).setOnClickListener(this); - findViewById(R.id.btn_clean_internal_databases).setOnClickListener(this); - findViewById(R.id.btn_clean_internal_sp).setOnClickListener(this); - findViewById(R.id.btn_clean_external_cache).setOnClickListener(this); - - internalCachePath = getCacheDir().getPath(); - internalFilesPath = getFilesDir().getPath(); - internalDbs = getFilesDir().getParent() + File.separator + "databases"; - internalSp = getFilesDir().getParent() + File.separator + "shared_prefs"; - - if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) { - externalCache = getExternalCacheDir().getAbsolutePath(); - } - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_clean_internal_cache: - showSnackbar(CleanUtils.cleanInternalCache(), internalCachePath); - break; - case R.id.btn_clean_internal_files: - showSnackbar(CleanUtils.cleanInternalFiles(), internalFilesPath); - break; - case R.id.btn_clean_internal_databases: - showSnackbar(CleanUtils.cleanInternalDbs(), internalDbs); - break; - case R.id.btn_clean_internal_sp: - showSnackbar(CleanUtils.cleanInternalSp(), internalSp); - break; - case R.id.btn_clean_external_cache: - showSnackbar(CleanUtils.cleanExternalCache(), externalCache); - break; - } - } - - private void showSnackbar(final boolean isSuccess, final String path) { - if (isSuccess) { - SnackbarUtils.with(snackBarRootView) - .setMessage("clean \"" + path + "\" dir success") - .setDuration(SnackbarUtils.LENGTH_LONG) - .showSuccess(); - } else { - SnackbarUtils.with(snackBarRootView) - .setMessage("clean \"" + path + "\" dir failed") - .setDuration(SnackbarUtils.LENGTH_LONG) - .showError(); - } - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/device/DeviceActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/device/DeviceActivity.java deleted file mode 100644 index 7525db7bb6..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/device/DeviceActivity.java +++ /dev/null @@ -1,102 +0,0 @@ -package com.blankj.androidutilcode.feature.core.device; - -import android.content.Context; -import android.content.Intent; -import android.os.Build; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.DeviceUtils; -import com.blankj.utilcode.util.SpanUtils; - -import java.util.Arrays; - -/** - *
- *     author: Blankj
- *     blog : http://blankj.com
- *     time : 2016/09/27
- *     desc : demo about DeviceUtils
- * 
- */ -public class DeviceActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, DeviceActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_device; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_device)); - - findViewById(R.id.btn_shutdown).setOnClickListener(this); - findViewById(R.id.btn_reboot).setOnClickListener(this); - findViewById(R.id.btn_reboot_to_recovery).setOnClickListener(this); - findViewById(R.id.btn_reboot_to_bootloader).setOnClickListener(this); - TextView tvAboutDevice = findViewById(R.id.tv_about_device); - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { - tvAboutDevice.setText(new SpanUtils() - .appendLine("isRoot: " + DeviceUtils.isDeviceRooted()) - .appendLine("isAdbEnabled: " + DeviceUtils.isAdbEnabled()) - .appendLine("getSDKVersionName: " + DeviceUtils.getSDKVersionName()) - .appendLine("getSDKVersionCode: " + DeviceUtils.getSDKVersionCode()) - .appendLine("getAndroidID: " + DeviceUtils.getAndroidID()) - .appendLine("getMacAddress: " + DeviceUtils.getMacAddress()) - .appendLine("getManufacturer: " + DeviceUtils.getManufacturer()) - .appendLine("getModel: " + DeviceUtils.getModel()) - .append("getABIs: " + Arrays.asList(DeviceUtils.getABIs())) - .create() - ); - } else { - tvAboutDevice.setText(new SpanUtils() - .appendLine("isRoot: " + DeviceUtils.isDeviceRooted()) - .appendLine("getSDKVersionName: " + DeviceUtils.getSDKVersionName()) - .appendLine("getSDKVersionCode: " + DeviceUtils.getSDKVersionCode()) - .appendLine("getAndroidID: " + DeviceUtils.getAndroidID()) - .appendLine("getMacAddress: " + DeviceUtils.getMacAddress()) - .appendLine("getManufacturer: " + DeviceUtils.getManufacturer()) - .appendLine("getModel: " + DeviceUtils.getModel()) - .append("getABIs: " + Arrays.asList(DeviceUtils.getABIs())) - .create() - ); - } - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_shutdown: - DeviceUtils.shutdown(); - break; - case R.id.btn_reboot: - DeviceUtils.reboot(); - break; - case R.id.btn_reboot_to_recovery: - DeviceUtils.reboot2Recovery(); - break; - case R.id.btn_reboot_to_bootloader: - DeviceUtils.reboot2Bootloader(); - break; - } - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/ChildFragment.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/ChildFragment.java deleted file mode 100644 index 94b59ef5ac..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/ChildFragment.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.blankj.androidutilcode.feature.core.fragment; - -import android.graphics.Color; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseFragment; -import com.blankj.utilcode.util.FragmentUtils; -import com.blankj.utilcode.util.LogUtils; - -import java.util.Random; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 17/02/02
- *     desc  : demo about FragmentUtils
- * 
- */ -public class ChildFragment extends BaseFragment - implements FragmentUtils.OnBackClickListener { - - private TextView tvAboutFragment; - - public static ChildFragment newInstance() { - Bundle args = new Bundle(); - ChildFragment fragment = new ChildFragment(); - fragment.setArguments(args); - return fragment; - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.fragment_child; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - Random random = new Random(); - FragmentUtils.setBackgroundColor(this, Color.rgb(random.nextInt(256), random.nextInt(256), random.nextInt(256))); - findViewById(R.id.btn_show_about_fragment).setOnClickListener(this); - findViewById(R.id.btn_pop).setOnClickListener(this); - tvAboutFragment = findViewById(R.id.tv_about_fragment); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - tvAboutFragment.setText(""); - switch (view.getId()) { - case R.id.btn_show_about_fragment: - tvAboutFragment.setText("top: " + FragmentUtils.getSimpleName(FragmentUtils.getTop(getFragmentManager())) - + "\ntopInStack: " + FragmentUtils.getSimpleName(FragmentUtils.getTopInStack(getFragmentManager())) - + "\ntopShow: " + FragmentUtils.getSimpleName(FragmentUtils.getTopShow(getFragmentManager())) - + "\ntopShowInStack: " + FragmentUtils.getSimpleName(FragmentUtils.getTopShowInStack(getFragmentManager())) - + "\n---all of fragments---\n" - + FragmentUtils.getAllFragments(getFragmentManager()).toString() - + "\n----------------------\n\n" - + "---stack top---\n" - + FragmentUtils.getAllFragmentsInStack(getFragmentManager()).toString() - + "\n---stack bottom---\n\n" - ); - break; -// case R.id.btn_pop: -// FragmentUtils.popFragment(getFragmentManager()); -// break; - } - } - - @Override - public boolean onBackClick() { - LogUtils.d("demo2 onBackClick"); - return false; - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/DetailTransition.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/DetailTransition.java deleted file mode 100644 index 1893362676..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/DetailTransition.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.blankj.androidutilcode.feature.core.fragment; - -import android.content.Context; -import android.os.Build; -import android.support.annotation.RequiresApi; -import android.transition.ChangeBounds; -import android.transition.ChangeImageTransform; -import android.transition.ChangeTransform; -import android.transition.TransitionSet; -import android.util.AttributeSet; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 17/02/21
- *     desc  : demo about FragmentUtils
- * 
- */ -@RequiresApi(Build.VERSION_CODES.LOLLIPOP) -public class DetailTransition extends TransitionSet { - public DetailTransition() { - init(); - } - - // 允许资源文件使用 - public DetailTransition(Context context, AttributeSet attrs) { - super(context, attrs); - init(); - } - - private void init() { - setOrdering(ORDERING_TOGETHER); - addTransition(new ChangeBounds()). - addTransition(new ChangeTransform()). - addTransition(new ChangeImageTransform()); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/FragmentActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/FragmentActivity.java deleted file mode 100644 index ec1c1a0349..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/FragmentActivity.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.blankj.androidutilcode.feature.core.fragment; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.os.PersistableBundle; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.design.widget.BottomNavigationView; -import android.support.v4.app.Fragment; -import android.view.MenuItem; -import android.view.View; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseActivity; -import com.blankj.utilcode.util.FragmentUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 17/02/01
- *     desc  : demo about FragmentUtils
- * 
- */ -public class FragmentActivity extends BaseActivity { - - private int[] itemIds = new int[]{ - R.id.navigation_fragment_zero, - R.id.navigation_fragment_one, - R.id.navigation_fragment_two - }; - - private BottomNavigationView navigation; - private Fragment[] mFragments = new Fragment[3]; - private int curIndex; - - public static void start(Context context) { - Intent starter = new Intent(context, FragmentActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_fragment; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - if (savedInstanceState != null) { - curIndex = savedInstanceState.getInt("curIndex"); - } - - navigation = findViewById(R.id.navigation_fragment); - navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener); - - mFragments[0] = Root0Fragment.newInstance(); - mFragments[1] = Root1Fragment.newInstance(); - mFragments[2] = Root2Fragment.newInstance(); - FragmentUtils.add(getSupportFragmentManager(), mFragments, R.id.fragment_container, curIndex); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } - - -// @Override -// public void onBackPressed() { -// if (!FragmentUtils.dispatchBackPress(getSupportFragmentManager())) { -// super.onBackPressed(); -// } -// } - - private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener - = new BottomNavigationView.OnNavigationItemSelectedListener() { - - @Override - public boolean onNavigationItemSelected(@NonNull MenuItem item) { - switch (item.getItemId()) { - case R.id.navigation_fragment_zero: - showCurrentFragment(0); - return true; - case R.id.navigation_fragment_one: - showCurrentFragment(1); - return true; - case R.id.navigation_fragment_two: - showCurrentFragment(2); - return true; - } - return false; - } - }; - - private void showCurrentFragment(int index) { - FragmentUtils.showHide(curIndex = index, mFragments); - } - - @Override - public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) { - super.onSaveInstanceState(outState, outPersistentState); - outState.putInt("curIndex", curIndex); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/Root0Fragment.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/Root0Fragment.java deleted file mode 100644 index a7048f6379..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/Root0Fragment.java +++ /dev/null @@ -1,166 +0,0 @@ -package com.blankj.androidutilcode.feature.core.fragment; - -import android.graphics.Color; -import android.os.Build; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.app.Fragment; -import android.transition.Fade; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseFragment; -import com.blankj.utilcode.util.FragmentUtils; - -import java.util.Random; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 17/02/02
- *     desc  : demo about FragmentUtils
- * 
- */ -public class Root0Fragment extends BaseFragment - implements FragmentUtils.OnBackClickListener { - - ImageView ivSharedElement; - TextView tvAboutFragment; - - public static Root0Fragment newInstance() { - Bundle args = new Bundle(); - Root0Fragment fragment = new Root0Fragment(); - fragment.setArguments(args); - return fragment; - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.fragment_root; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - Random random = new Random(); - FragmentUtils.setBackgroundColor(this, Color.rgb(random.nextInt(256), random.nextInt(256), random.nextInt(256))); - findViewById(R.id.btn_show_about_fragment).setOnClickListener(this); - findViewById(R.id.btn_add).setOnClickListener(this); - findViewById(R.id.btn_add_hide).setOnClickListener(this); - findViewById(R.id.btn_add_hide_stack).setOnClickListener(this); - findViewById(R.id.btn_add).setOnClickListener(this); - findViewById(R.id.btn_add_show).setOnClickListener(this); - findViewById(R.id.btn_add_child).setOnClickListener(this); - findViewById(R.id.btn_pop_to_root).setOnClickListener(this); - findViewById(R.id.btn_pop_add).setOnClickListener(this); - findViewById(R.id.btn_hide_show).setOnClickListener(this); - findViewById(R.id.btn_replace).setOnClickListener(this); - ivSharedElement = findViewById(R.id.iv_shared_element); - tvAboutFragment = findViewById(R.id.tv_about_fragment); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - tvAboutFragment.setText(""); - switch (view.getId()) { - case R.id.btn_show_about_fragment: - tvAboutFragment.setText("top: " + FragmentUtils.getSimpleName(FragmentUtils.getTop(getFragmentManager())) - + "\ntopInStack: " + FragmentUtils.getSimpleName(FragmentUtils.getTopInStack(getFragmentManager())) - + "\ntopShow: " + FragmentUtils.getSimpleName(FragmentUtils.getTopShow(getFragmentManager())) - + "\ntopShowInStack: " + FragmentUtils.getSimpleName(FragmentUtils.getTopShowInStack(getFragmentManager())) - + "\n---all of fragments---\n" - + FragmentUtils.getAllFragments(getFragmentManager()).toString() - + "\n----------------------\n\n" - + "---stack top---\n" - + FragmentUtils.getAllFragmentsInStack(getFragmentManager()).toString() - + "\n---stack bottom---\n\n" - ); - break; - case R.id.btn_add: - FragmentUtils.add(getFragmentManager(), - ChildFragment.newInstance(), - R.id.child_fragment_container, - false, - true); - break; - case R.id.btn_add_hide: - FragmentUtils.add(getFragmentManager(), - ChildFragment.newInstance(), - R.id.fragment_container, - true); - break; - case R.id.btn_add_hide_stack: - FragmentUtils.add(getFragmentManager(), - ChildFragment.newInstance(), - R.id.fragment_container, - true, - true); - break; -// case R.id.btn_add_show: -// FragmentUtils.add(getFragmentManager(), -// addSharedElement(Demo1Fragment.newInstance()), -// R.id.fragment_container, -// false, -// false, -// sharedElement); -// break; -// case R.id.btn_add_child: -// FragmentUtils.add(getChildFragmentManager(), -// ChildFragment.newInstance(), -// R.id.child_fragment_container, -// false, -// true); -// break; -// case R.id.btn_pop_to_root: -// FragmentUtils.popToFragment(getFragmentManager(), -// Demo1Fragment.class, -// true); -// break; -// case R.id.btn_pop_add: -// FragmentUtils.popAddFragment(getFragmentManager(), -// addSharedElement(ChildFragment.newInstance()), -// R.id.fragment_container, -// true, -// sharedElement); -// break; -// case R.id.btn_hide_show: -// Fragment fragment1 = FragmentUtils.findFragment(getFragmentManager(), Demo1Fragment.class); -// if (fragment1 != null) { -// FragmentUtils.showHideFragment(this, fragment1); -// } else { -// ToastUtils.showLong("please add demo1 first!"); -// } -// break; -// case R.id.btn_replace: -// ((FragmentActivity) getActivity()).rootFragment = FragmentUtils.replaceFragment(this, addSharedElement(Demo3Fragment.newInstance()), false, sharedElement); -// break; - } - } - - private Fragment addSharedElement(Fragment fragment) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - fragment.setSharedElementEnterTransition(new DetailTransition()); - fragment.setEnterTransition(new Fade()); - fragment.setSharedElementReturnTransition(new DetailTransition()); - } - return fragment; - } - - @Override - public boolean onBackClick() { -// FragmentUtils.popToFragment(getFragmentManager(), Demo1Fragment.class, true); - return false; - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/Root1Fragment.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/Root1Fragment.java deleted file mode 100644 index cce86072d2..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/Root1Fragment.java +++ /dev/null @@ -1,164 +0,0 @@ -package com.blankj.androidutilcode.feature.core.fragment; - -import android.graphics.Color; -import android.os.Build; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.app.Fragment; -import android.transition.Fade; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseFragment; -import com.blankj.utilcode.util.FragmentUtils; - -import java.util.Random; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 17/02/02
- *     desc  : demo about FragmentUtils
- * 
- */ -public class Root1Fragment extends BaseFragment - implements FragmentUtils.OnBackClickListener { - - ImageView ivSharedElement; - TextView tvAboutFragment; - - public static Root1Fragment newInstance() { - Bundle args = new Bundle(); - Root1Fragment fragment = new Root1Fragment(); - fragment.setArguments(args); - return fragment; - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.fragment_root; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - Random random = new Random(); - FragmentUtils.setBackgroundColor(this, Color.rgb(random.nextInt(256), random.nextInt(256), random.nextInt(256))); - findViewById(R.id.btn_show_about_fragment).setOnClickListener(this); - findViewById(R.id.btn_add).setOnClickListener(this); - findViewById(R.id.btn_add_hide).setOnClickListener(this); - findViewById(R.id.btn_add_hide_stack).setOnClickListener(this); - findViewById(R.id.btn_add).setOnClickListener(this); - findViewById(R.id.btn_add_show).setOnClickListener(this); - findViewById(R.id.btn_add_child).setOnClickListener(this); - findViewById(R.id.btn_pop_to_root).setOnClickListener(this); - findViewById(R.id.btn_pop_add).setOnClickListener(this); - findViewById(R.id.btn_hide_show).setOnClickListener(this); - findViewById(R.id.btn_replace).setOnClickListener(this); - ivSharedElement = findViewById(R.id.iv_shared_element); - tvAboutFragment = findViewById(R.id.tv_about_fragment); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - tvAboutFragment.setText(""); - switch (view.getId()) { - case R.id.btn_show_about_fragment: - tvAboutFragment.setText("top: " + FragmentUtils.getSimpleName(FragmentUtils.getTop(getFragmentManager())) - + "\ntopInStack: " + FragmentUtils.getSimpleName(FragmentUtils.getTopInStack(getFragmentManager())) - + "\ntopShow: " + FragmentUtils.getSimpleName(FragmentUtils.getTopShow(getFragmentManager())) - + "\ntopShowInStack: " + FragmentUtils.getSimpleName(FragmentUtils.getTopShowInStack(getFragmentManager())) - + "\n---all of fragments---\n" - + FragmentUtils.getAllFragments(getFragmentManager()).toString() - + "\n----------------------\n\n" - + "---stack top---\n" - + FragmentUtils.getAllFragmentsInStack(getFragmentManager()).toString() - + "\n---stack bottom---\n\n" - ); - break; - case R.id.btn_add: - FragmentUtils.add(getFragmentManager(), - ChildFragment.newInstance(), - R.id.fragment_container); - break; - case R.id.btn_add_hide: - FragmentUtils.add(getFragmentManager(), - ChildFragment.newInstance(), - R.id.fragment_container, - true); - break; - case R.id.btn_add_hide_stack: - FragmentUtils.add(getFragmentManager(), - ChildFragment.newInstance(), - R.id.fragment_container, - true, - true); - break; -// case R.id.btn_add_show: -// FragmentUtils.add(getFragmentManager(), -// addSharedElement(Demo1Fragment.newInstance()), -// R.id.fragment_container, -// false, -// false, -// sharedElement); -// break; -// case R.id.btn_add_child: -// FragmentUtils.add(getChildFragmentManager(), -// ChildFragment.newInstance(), -// R.id.child_fragment_container, -// false, -// true); -// break; -// case R.id.btn_pop_to_root: -// FragmentUtils.popToFragment(getFragmentManager(), -// Demo1Fragment.class, -// true); -// break; -// case R.id.btn_pop_add: -// FragmentUtils.popAddFragment(getFragmentManager(), -// addSharedElement(ChildFragment.newInstance()), -// R.id.fragment_container, -// true, -// sharedElement); -// break; -// case R.id.btn_hide_show: -// Fragment fragment1 = FragmentUtils.findFragment(getFragmentManager(), Demo1Fragment.class); -// if (fragment1 != null) { -// FragmentUtils.showHideFragment(this, fragment1); -// } else { -// ToastUtils.showLong("please add demo1 first!"); -// } -// break; -// case R.id.btn_replace: -// ((FragmentActivity) getActivity()).rootFragment = FragmentUtils.replaceFragment(this, addSharedElement(Demo3Fragment.newInstance()), false, sharedElement); -// break; - } - } - - private Fragment addSharedElement(Fragment fragment) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - fragment.setSharedElementEnterTransition(new DetailTransition()); - fragment.setEnterTransition(new Fade()); - fragment.setSharedElementReturnTransition(new DetailTransition()); - } - return fragment; - } - - @Override - public boolean onBackClick() { -// FragmentUtils.popToFragment(getFragmentManager(), Demo1Fragment.class, true); - return false; - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/Root2Fragment.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/Root2Fragment.java deleted file mode 100644 index 2a6bc6c3d5..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/fragment/Root2Fragment.java +++ /dev/null @@ -1,164 +0,0 @@ -package com.blankj.androidutilcode.feature.core.fragment; - -import android.graphics.Color; -import android.os.Build; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.app.Fragment; -import android.transition.Fade; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseFragment; -import com.blankj.utilcode.util.FragmentUtils; - -import java.util.Random; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 17/02/02
- *     desc  : demo about FragmentUtils
- * 
- */ -public class Root2Fragment extends BaseFragment - implements FragmentUtils.OnBackClickListener { - - ImageView ivSharedElement; - TextView tvAboutFragment; - - public static Root2Fragment newInstance() { - Bundle args = new Bundle(); - Root2Fragment fragment = new Root2Fragment(); - fragment.setArguments(args); - return fragment; - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.fragment_root; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - Random random = new Random(); - FragmentUtils.setBackgroundColor(this, Color.rgb(random.nextInt(256), random.nextInt(256), random.nextInt(256))); - findViewById(R.id.btn_show_about_fragment).setOnClickListener(this); - findViewById(R.id.btn_add).setOnClickListener(this); - findViewById(R.id.btn_add_hide).setOnClickListener(this); - findViewById(R.id.btn_add_hide_stack).setOnClickListener(this); - findViewById(R.id.btn_add).setOnClickListener(this); - findViewById(R.id.btn_add_show).setOnClickListener(this); - findViewById(R.id.btn_add_child).setOnClickListener(this); - findViewById(R.id.btn_pop_to_root).setOnClickListener(this); - findViewById(R.id.btn_pop_add).setOnClickListener(this); - findViewById(R.id.btn_hide_show).setOnClickListener(this); - findViewById(R.id.btn_replace).setOnClickListener(this); - ivSharedElement = findViewById(R.id.iv_shared_element); - tvAboutFragment = findViewById(R.id.tv_about_fragment); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - tvAboutFragment.setText(""); - switch (view.getId()) { - case R.id.btn_show_about_fragment: - tvAboutFragment.setText("top: " + FragmentUtils.getSimpleName(FragmentUtils.getTop(getFragmentManager())) - + "\ntopInStack: " + FragmentUtils.getSimpleName(FragmentUtils.getTopInStack(getFragmentManager())) - + "\ntopShow: " + FragmentUtils.getSimpleName(FragmentUtils.getTopShow(getFragmentManager())) - + "\ntopShowInStack: " + FragmentUtils.getSimpleName(FragmentUtils.getTopShowInStack(getFragmentManager())) - + "\n---all of fragments---\n" - + FragmentUtils.getAllFragments(getFragmentManager()).toString() - + "\n----------------------\n\n" - + "---stack top---\n" - + FragmentUtils.getAllFragmentsInStack(getFragmentManager()).toString() - + "\n---stack bottom---\n\n" - ); - break; - case R.id.btn_add: - FragmentUtils.add(getFragmentManager(), - ChildFragment.newInstance(), - R.id.fragment_container); - break; - case R.id.btn_add_hide: - FragmentUtils.add(getFragmentManager(), - ChildFragment.newInstance(), - R.id.fragment_container, - true); - break; - case R.id.btn_add_hide_stack: - FragmentUtils.add(getFragmentManager(), - ChildFragment.newInstance(), - R.id.fragment_container, - true, - true); - break; -// case R.id.btn_add_show: -// FragmentUtils.add(getFragmentManager(), -// addSharedElement(Demo1Fragment.newInstance()), -// R.id.fragment_container, -// false, -// false, -// sharedElement); -// break; -// case R.id.btn_add_child: -// FragmentUtils.add(getChildFragmentManager(), -// ChildFragment.newInstance(), -// R.id.child_fragment_container, -// false, -// true); -// break; -// case R.id.btn_pop_to_root: -// FragmentUtils.popToFragment(getFragmentManager(), -// Demo1Fragment.class, -// true); -// break; -// case R.id.btn_pop_add: -// FragmentUtils.popAddFragment(getFragmentManager(), -// addSharedElement(ChildFragment.newInstance()), -// R.id.fragment_container, -// true, -// sharedElement); -// break; -// case R.id.btn_hide_show: -// Fragment fragment1 = FragmentUtils.findFragment(getFragmentManager(), Demo1Fragment.class); -// if (fragment1 != null) { -// FragmentUtils.showHideFragment(this, fragment1); -// } else { -// ToastUtils.showLong("please add demo1 first!"); -// } -// break; -// case R.id.btn_replace: -// ((FragmentActivity) getActivity()).rootFragment = FragmentUtils.replaceFragment(this, addSharedElement(Demo3Fragment.newInstance()), false, sharedElement); -// break; - } - } - - private Fragment addSharedElement(Fragment fragment) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - fragment.setSharedElementEnterTransition(new DetailTransition()); - fragment.setEnterTransition(new Fade()); - fragment.setSharedElementReturnTransition(new DetailTransition()); - } - return fragment; - } - - @Override - public boolean onBackClick() { -// FragmentUtils.popToFragment(getFragmentManager(), Demo1Fragment.class, true); - return false; - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/image/ImageActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/image/ImageActivity.java deleted file mode 100644 index acb8e8a251..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/image/ImageActivity.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.blankj.androidutilcode.feature.core.image; - -import android.content.Context; -import android.content.Intent; -import android.graphics.Bitmap; -import android.graphics.Color; -import android.os.Build; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.view.View; - -import com.blankj.androidutilcode.Config; -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseActivity; -import com.blankj.utilcode.util.ImageUtils; -import com.blankj.utilcode.util.ToastUtils; - -import java.util.ArrayList; -import java.util.List; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/26
- *     desc  : demo about ImageUtils
- * 
- */ -public class ImageActivity extends BaseActivity { - - Bitmap src; - List mList = new ArrayList<>(); - - public static void start(Context context) { - Intent starter = new Intent(context, ImageActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_image; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { -// getToolBar().setTitle(getString(R.string.demo_image)); - - RecyclerView rvImages = findViewById(R.id.rv_images); - findViewById(R.id.btn_save).setOnClickListener(this); - - src = ImageUtils.getBitmap(R.drawable.image_lena); - Bitmap round = ImageUtils.getBitmap(R.drawable.main_avatar_round); - Bitmap watermark = ImageUtils.getBitmap(R.mipmap.ic_launcher); - - int width = src.getWidth(); - int height = src.getHeight(); - - mList.add(new ImageBean(R.string.image_src, src)); - mList.add(new ImageBean(R.string.image_add_color, ImageUtils.drawColor(src, Color.parseColor("#8000FF00")))); - mList.add(new ImageBean(R.string.image_scale, ImageUtils.scale(src, width / 2, height / 2))); - mList.add(new ImageBean(R.string.image_clip, ImageUtils.clip(src, 0, 0, width / 2, height / 2))); - mList.add(new ImageBean(R.string.image_skew, ImageUtils.skew(src, 0.2f, 0.1f))); - mList.add(new ImageBean(R.string.image_rotate, ImageUtils.rotate(src, 90, width / 2, height / 2))); - mList.add(new ImageBean(R.string.image_to_round, ImageUtils.toRound(src))); - mList.add(new ImageBean(R.string.image_to_round_border, ImageUtils.toRound(src, 16, Color.GREEN))); - mList.add(new ImageBean(R.string.image_to_round_corner, ImageUtils.toRoundCorner(src, 80))); - mList.add(new ImageBean(R.string.image_to_round_corner_border, ImageUtils.toRoundCorner(src, 80, 16, Color.GREEN))); - mList.add(new ImageBean(R.string.image_add_corner_border, ImageUtils.addCornerBorder(src, 16, Color.GREEN, 0))); - mList.add(new ImageBean(R.string.image_add_circle_border, ImageUtils.addCircleBorder(round, 16, Color.GREEN))); - mList.add(new ImageBean(R.string.image_add_reflection, ImageUtils.addReflection(src, 80))); - mList.add(new ImageBean(R.string.image_add_text_watermark, ImageUtils.addTextWatermark(src, "blankj", 40, Color.GREEN, 0, 0))); - mList.add(new ImageBean(R.string.image_add_image_watermark, ImageUtils.addImageWatermark(src, watermark, 0, 0, 0x88))); - mList.add(new ImageBean(R.string.image_to_gray, ImageUtils.toGray(src))); - mList.add(new ImageBean(R.string.image_fast_blur, ImageUtils.fastBlur(src, 0.1f, 5))); - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { - mList.add(new ImageBean(R.string.image_render_script_blur, ImageUtils.renderScriptBlur(src, 10))); - } - mList.add(new ImageBean(R.string.image_stack_blur, ImageUtils.stackBlur(src, 10))); - mList.add(new ImageBean(R.string.image_compress_by_scale, ImageUtils.compressByScale(src, 0.5f, 0.5f))); - mList.add(new ImageBean(R.string.image_compress_by_quality_half, ImageUtils.compressByQuality(src, 50))); - mList.add(new ImageBean(R.string.image_compress_by_quality_max_size, ImageUtils.compressByQuality(src, 10L * 1024)));// 10Kb - mList.add(new ImageBean(R.string.image_compress_by_sample_size, ImageUtils.compressBySampleSize(src, 2))); - - rvImages.setAdapter(new ImageAdapter(mList, R.layout.item_image1)); - rvImages.setLayoutManager(new LinearLayoutManager(this)); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_save: - boolean save = ImageUtils.save(src, Config.CACHE_PATH + "lena.jpg", Bitmap.CompressFormat.JPEG); - ToastUtils.showLong(save ? "successful" : "failed"); - break; - } - } -} \ No newline at end of file diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/image/ImageAdapter.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/image/ImageAdapter.java deleted file mode 100644 index bad73d299a..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/image/ImageAdapter.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.blankj.androidutilcode.feature.core.image; - -import android.support.annotation.LayoutRes; -import android.widget.ImageView; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.rv.BaseViewHolder; -import com.blankj.androidutilcode.base.rv.adapter.SingleAdapter; - -import java.util.List; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/09/18
- *     desc  : demo about ImageUtils
- * 
- */ -public class ImageAdapter extends SingleAdapter { - - public ImageAdapter(List list, @LayoutRes int layoutId) { - super(list, layoutId); - } - - @Override - protected void bind(BaseViewHolder holder, ImageBean data) { - TextView textView = holder.getView(R.id.tv_image_name); - textView.setText(data.getName()); - ImageView image = holder.getView(R.id.iv_image); - image.setImageBitmap(data.getImage()); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/image/ImageBean.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/image/ImageBean.java deleted file mode 100644 index bc7e8bb6b0..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/image/ImageBean.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.blankj.androidutilcode.feature.core.image; - -import android.graphics.Bitmap; -import android.support.annotation.StringRes; - -import com.blankj.utilcode.util.Utils; - - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/09/18
- *     desc  : demo about ImageUtils
- * 
- */ -public class ImageBean { - - int resId; - String name; - Bitmap image; - - public ImageBean(@StringRes int resId, Bitmap image) { - name = Utils.getApp().getString(resId); - this.image = image; - } - - public ImageBean(String name, Bitmap image) { - this.name = name; - this.image = image; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Bitmap getImage() { - return image; - } - - public void setImage(Bitmap image) { - this.image = image; - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/keyboard/KeyboardActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/keyboard/KeyboardActivity.java deleted file mode 100644 index c255c1c7be..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/keyboard/KeyboardActivity.java +++ /dev/null @@ -1,128 +0,0 @@ -package com.blankj.androidutilcode.feature.core.keyboard; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v7.app.AlertDialog; -import android.view.View; -import android.widget.EditText; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.androidutilcode.helper.DialogHelper; -import com.blankj.utilcode.util.KeyboardUtils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/27
- *     desc  : demo about KeyboardUtils
- * 
- */ -public class KeyboardActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, KeyboardActivity.class); - context.startActivity(starter); - } - - TextView tvAboutKeyboard; - EditText etInput; - private AlertDialog dialog; - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_keyboard; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - KeyboardUtils.fixAndroidBug5497(this); - etInput = findViewById(R.id.et_input); - findViewById(R.id.btn_hide_soft_input).setOnClickListener(this); - findViewById(R.id.btn_show_soft_input).setOnClickListener(this); - findViewById(R.id.btn_toggle_soft_input).setOnClickListener(this); - findViewById(R.id.btn_keyboard_in_fragment).setOnClickListener(this); - tvAboutKeyboard = findViewById(R.id.tv_about_keyboard); - - KeyboardUtils.registerSoftInputChangedListener(this, - new KeyboardUtils.OnSoftInputChangedListener() { - @Override - public void onSoftInputChanged(int height) { - tvAboutKeyboard.setText(new SpanUtils() - .appendLine("isSoftInputVisible: " + KeyboardUtils.isSoftInputVisible(KeyboardActivity.this)) - .append("height: " + height) - .create() - ); - } - }); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_hide_soft_input: - KeyboardUtils.hideSoftInput(this); - break; - case R.id.btn_show_soft_input: - KeyboardUtils.showSoftInput(this); - break; - case R.id.btn_toggle_soft_input: - KeyboardUtils.toggleSoftInput(); - break; - case R.id.btn_keyboard_in_fragment: - DialogHelper.showKeyboardDialog(); - KeyboardUtils.showSoftInput(this); - break; - } - } - -// @Override -// public boolean dispatchTouchEvent(MotionEvent ev) { -// if (ev.getAction() == MotionEvent.ACTION_DOWN) { -// View v = getCurrentFocus(); -// if (isShouldHideKeyboard(v, ev)) { -// InputMethodManager imm = -// (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); -// if (imm == null) return super.dispatchTouchEvent(ev); -// imm.hideSoftInputFromWindow(v.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); -// } -// } -// return super.dispatchTouchEvent(ev); -// } -// -// // 根据 EditText 所在坐标和用户点击的坐标相对比,来判断是否隐藏键盘 -// private boolean isShouldHideKeyboard(View v, MotionEvent event) { -// if (v != null && (v instanceof EditText)) { -// int[] l = {0, 0}; -// v.getLocationInWindow(l); -// int left = l[0], -// top = l[1], -// bottom = top + v.getHeight(), -// right = left + v.getWidth(); -// return !(event.getX() > left && event.getX() < right -// && event.getY() > top && event.getY() < bottom); -// } -// return false; -// } - - @Override - protected void onDestroy() { - KeyboardUtils.unregisterSoftInputChangedListener(this); - super.onDestroy(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/log/LogActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/log/LogActivity.java deleted file mode 100644 index fde5051c7b..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/log/LogActivity.java +++ /dev/null @@ -1,352 +0,0 @@ -package com.blankj.androidutilcode.feature.core.log; - -import android.content.ComponentName; -import android.content.Context; -import android.content.Intent; -import android.net.Uri; -import android.os.Bundle; -import android.os.Environment; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.Config; -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.UtilsApp; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.LogUtils; - -import java.util.ArrayList; - - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/03/22
- *     desc  : demo about LogUtils
- * 
- */ -public class LogActivity extends BaseBackActivity { - - private static final String TAG = "CMJ"; - private static final int UPDATE_LOG = 0x01; - private static final int UPDATE_CONSOLE = 0x01 << 1; - private static final int UPDATE_TAG = 0x01 << 2; - private static final int UPDATE_HEAD = 0x01 << 3; - private static final int UPDATE_FILE = 0x01 << 4; - private static final int UPDATE_DIR = 0x01 << 5; - private static final int UPDATE_BORDER = 0x01 << 6; - private static final int UPDATE_SINGLE = 0x01 << 7; - private static final int UPDATE_CONSOLE_FILTER = 0x01 << 8; - private static final int UPDATE_FILE_FILTER = 0x01 << 9; - - private static final String JSON = "{\"tools\": [{ \"name\":\"css format\" , \"site\":\"http://tools.w3cschool.cn/code/css/" },{ \"name\":\"JSON format\" , \"site\":\"http://tools.w3cschool.cn/code/JSON/" },{ \"name\":\"pwd check\" , \"site\":\"http://tools.w3cschool.cn/password/my_password_safe/" }]}"; - private static final String XML = "Jack HerringtonPHP HacksO'ReillyJack HerringtonPodcasting HacksO'Reilly"; - private static final int[] ONE_D_ARRAY = new int[]{1, 2, 3}; - private static final int[][] TWO_D_ARRAY = new int[][]{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; - private static final Throwable THROWABLE = new NullPointerException(); - private static final Bundle BUNDLE = new Bundle(); - private static final Intent INTENT = new Intent(); - private static final ArrayList LIST = new ArrayList<>(); - - private static final String LONG_STR; - - static { - StringBuilder sb = new StringBuilder(); - sb.append("len = 10400\ncontent = \""); - for (int i = 0; i < 800; ++i) { - sb.append("Hello world. "); - } - sb.append("\""); - LONG_STR = sb.toString(); - - BUNDLE.putByte("byte", (byte) -1); - BUNDLE.putChar("char", 'c'); - BUNDLE.putCharArray("charArray", new char[]{'c', 'h', 'a', 'r', 'A', 'r', 'r', 'a', 'y'}); - BUNDLE.putCharSequence("charSequence", "charSequence"); - BUNDLE.putCharSequenceArray("charSequenceArray", new CharSequence[]{"char", "Sequence", "Array"}); - BUNDLE.putBundle("bundle", BUNDLE); - BUNDLE.putBoolean("boolean", true); - BUNDLE.putInt("int", 1); - BUNDLE.putFloat("float", 1.f); - BUNDLE.putLong("long", 1L); - BUNDLE.putShort("short", (short) 1); - - INTENT.setAction("LogUtils action"); - INTENT.addCategory("LogUtils category"); - INTENT.setData(Uri.parse(Config.BLOG)); - INTENT.setType(Intent.ACTION_DIAL); - INTENT.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - INTENT.setPackage(Config.PKG); - INTENT.setComponent(new ComponentName(Config.PKG, LogActivity.class.toString())); - INTENT.putExtra("int", 1); - INTENT.putExtra("float", 1f); - INTENT.putExtra("char", 'c'); - INTENT.putExtra("string", "string"); - INTENT.putExtra("intArray", ONE_D_ARRAY); - ArrayList list = new ArrayList<>(); - list.add("ArrayList"); - list.add("is"); - list.add("serializable"); - INTENT.putExtra("serializable", list); - INTENT.putExtra("bundle", BUNDLE); - - LIST.add("hello"); - LIST.add("log"); - LIST.add("utils"); - } - - private TextView tvAboutLog; - - private LogUtils.Config mConfig = LogUtils.getConfig(); - - private String dir = ""; - private String globalTag = ""; - private boolean log = true; - private boolean console = true; - private boolean head = true; - private boolean file = false; - private boolean border = true; - private boolean single = true; - private int consoleFilter = LogUtils.V; - private int fileFilter = LogUtils.V; - - - private Runnable mRunnable = new Runnable() { - @Override - public void run() { - LogUtils.v("verbose"); - LogUtils.d("debug"); - LogUtils.i("info"); - LogUtils.w("warn"); - LogUtils.e("error"); - LogUtils.a("assert"); - } - }; - - public static void start(Context context) { - Intent starter = new Intent(context, LogActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_log; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_log)); - - tvAboutLog = findViewById(R.id.tv_about_log); - findViewById(R.id.btn_toggle_log).setOnClickListener(this); - findViewById(R.id.btn_toggle_console).setOnClickListener(this); - findViewById(R.id.btn_toggle_tag).setOnClickListener(this); - findViewById(R.id.btn_toggle_head).setOnClickListener(this); - findViewById(R.id.btn_toggle_border).setOnClickListener(this); - findViewById(R.id.btn_toggle_single).setOnClickListener(this); - findViewById(R.id.btn_toggle_file).setOnClickListener(this); - findViewById(R.id.btn_toggle_dir).setOnClickListener(this); - findViewById(R.id.btn_toggle_conole_filter).setOnClickListener(this); - findViewById(R.id.btn_toggle_file_filter).setOnClickListener(this); - findViewById(R.id.btn_log_no_tag).setOnClickListener(this); - findViewById(R.id.btn_log_with_tag).setOnClickListener(this); - findViewById(R.id.btn_log_in_new_thread).setOnClickListener(this); - findViewById(R.id.btn_log_null).setOnClickListener(this); - findViewById(R.id.btn_log_many_params).setOnClickListener(this); - findViewById(R.id.btn_log_long).setOnClickListener(this); - findViewById(R.id.btn_log_file).setOnClickListener(this); - findViewById(R.id.btn_log_json).setOnClickListener(this); - findViewById(R.id.btn_log_xml).setOnClickListener(this); - findViewById(R.id.btn_log_array).setOnClickListener(this); - findViewById(R.id.btn_log_throwable).setOnClickListener(this); - findViewById(R.id.btn_log_bundle).setOnClickListener(this); - findViewById(R.id.btn_log_intent).setOnClickListener(this); - findViewById(R.id.btn_log_array_list).setOnClickListener(this); - updateConfig(0); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_toggle_log: - updateConfig(UPDATE_LOG); - break; - case R.id.btn_toggle_console: - updateConfig(UPDATE_CONSOLE); - break; - case R.id.btn_toggle_tag: - updateConfig(UPDATE_TAG); - break; - case R.id.btn_toggle_head: - updateConfig(UPDATE_HEAD); - break; - case R.id.btn_toggle_file: - updateConfig(UPDATE_FILE); - break; - case R.id.btn_toggle_dir: - updateConfig(UPDATE_DIR); - break; - case R.id.btn_toggle_border: - updateConfig(UPDATE_BORDER); - break; - case R.id.btn_toggle_single: - updateConfig(UPDATE_SINGLE); - break; - case R.id.btn_toggle_conole_filter: - updateConfig(UPDATE_CONSOLE_FILTER); - break; - case R.id.btn_toggle_file_filter: - updateConfig(UPDATE_FILE_FILTER); - break; - case R.id.btn_log_no_tag: - LogUtils.v("verbose"); - LogUtils.d("debug"); - LogUtils.i("info"); - LogUtils.w("warn"); - LogUtils.e("error"); - LogUtils.a("assert"); - break; - case R.id.btn_log_with_tag: - LogUtils.vTag("customTag", "verbose"); - LogUtils.dTag("customTag", "debug"); - LogUtils.iTag("customTag", "info"); - LogUtils.wTag("customTag", "warn"); - LogUtils.eTag("customTag", "error"); - LogUtils.aTag("customTag", "assert"); - break; - case R.id.btn_log_in_new_thread: - Thread thread = new Thread(mRunnable); - thread.start(); - break; - case R.id.btn_log_null: - LogUtils.v((Object) null); - LogUtils.d((Object) null); - LogUtils.i((Object) null); - LogUtils.w((Object) null); - LogUtils.e((Object) null); - LogUtils.a((Object) null); - break; - case R.id.btn_log_many_params: - LogUtils.v("verbose0", "verbose1"); - LogUtils.vTag("customTag", "verbose0", "verbose1"); - LogUtils.d("debug0", "debug1"); - LogUtils.dTag("customTag", "debug0", "debug1"); - LogUtils.i("info0", "info1"); - LogUtils.iTag("customTag", "info0", "info1"); - LogUtils.w("warn0", "warn1"); - LogUtils.wTag("customTag", "warn0", "warn1"); - LogUtils.e("error0", "error1"); - LogUtils.eTag("customTag", "error0", "error1"); - LogUtils.a("assert0", "assert1"); - LogUtils.aTag("customTag", "assert0", "assert1"); - break; - case R.id.btn_log_long: - LogUtils.d(LONG_STR); - break; - case R.id.btn_log_file: - for (int i = 0; i < 100; i++) { - LogUtils.file("test0 log to file"); - LogUtils.file(LogUtils.I, "test0 log to file"); - } - break; - case R.id.btn_log_json: - LogUtils.json(JSON); - LogUtils.json(LogUtils.I, JSON); - break; - case R.id.btn_log_xml: - LogUtils.xml(XML); - LogUtils.xml(LogUtils.I, XML); - break; - case R.id.btn_log_array: - LogUtils.e((Object) ONE_D_ARRAY); - LogUtils.e((Object) TWO_D_ARRAY); - break; - case R.id.btn_log_throwable: - LogUtils.e(THROWABLE); - break; - case R.id.btn_log_bundle: - LogUtils.e(BUNDLE); - break; - case R.id.btn_log_intent: - LogUtils.e(INTENT); - break; - case R.id.btn_log_array_list: - LogUtils.e(LIST); - break; - } - } - - private void updateConfig(int args) { - switch (args) { - case UPDATE_LOG: - log = !log; - break; - case UPDATE_CONSOLE: - console = !console; - break; - case UPDATE_TAG: - globalTag = globalTag.equals(TAG) ? "" : TAG; - break; - case UPDATE_HEAD: - head = !head; - break; - case UPDATE_FILE: - file = !file; - break; - case UPDATE_DIR: - if (getDir().contains("test")) { - dir = null; - } else { - if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) { - dir = Environment.getExternalStorageDirectory().getPath() + System.getProperty("file.separator") + "test"; - } - } - break; - case UPDATE_BORDER: - border = !border; - break; - case UPDATE_SINGLE: - single = !single; - break; - case UPDATE_CONSOLE_FILTER: - consoleFilter = consoleFilter == LogUtils.V ? LogUtils.W : LogUtils.V; - break; - case UPDATE_FILE_FILTER: - fileFilter = fileFilter == LogUtils.V ? LogUtils.I : LogUtils.V; - break; - } - mConfig.setLogSwitch(log) - .setConsoleSwitch(console) - .setGlobalTag(globalTag) - .setLogHeadSwitch(head) - .setLog2FileSwitch(file) - .setDir(dir) - .setBorderSwitch(border) - .setSingleTagSwitch(single) - .setConsoleFilter(consoleFilter) - .setFileFilter(fileFilter); - tvAboutLog.setText(mConfig.toString()); - } - - private String getDir() { - return mConfig.toString().split(System.getProperty("line.separator"))[5].substring(5); - } - - @Override - protected void onDestroy() { - UtilsApp.getInstance().initLog(); - super.onDestroy(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/metaData/MetaDataActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/metaData/MetaDataActivity.java deleted file mode 100644 index 7ada61d055..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/metaData/MetaDataActivity.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.blankj.androidutilcode.feature.core.metaData; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.MetaDataUtils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/05/15
- *     desc  : demo about MetaDataUtils
- * 
- */ -public class MetaDataActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, MetaDataActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_meta_data; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_meta_data)); - - TextView tvAboutMetaData = findViewById(R.id.tv_about_metadata); - tvAboutMetaData.setText(new SpanUtils() - .appendLine("getMetaDataInApp: " + MetaDataUtils.getMetaDataInApp("app_meta_data")) - .append("getMetaDataInActivity: " + MetaDataUtils.getMetaDataInActivity(this, "activity_meta_data")) - .create()); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/network/NetworkActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/network/NetworkActivity.java deleted file mode 100644 index 232d8333c1..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/network/NetworkActivity.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.blankj.androidutilcode.feature.core.network; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.NetworkUtils; -import com.blankj.utilcode.util.SpanUtils; -import com.blankj.utilcode.util.ThreadUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about NetworkUtils
- * 
- */ -public class NetworkActivity extends BaseBackActivity { - - TextView tvAboutNetwork; - TextView tvAboutNetworkAsync; - ThreadUtils.SimpleTask mSimpleTask = new ThreadUtils.SimpleTask() { - @Override - public String doInBackground() { - return "isAvailableByPing: " + NetworkUtils.isAvailableByPing() - + "\ngetBaiduDomainAddress: " + NetworkUtils.getDomainAddress("baidu.com"); - } - - @Override - public void onSuccess(String result) { - tvAboutNetworkAsync.setText(result); - } - }; - - public static void start(Context context) { - Intent starter = new Intent(context, NetworkActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_network; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_network)); - - tvAboutNetwork = findViewById(R.id.tv_about_network); - tvAboutNetworkAsync = findViewById(R.id.tv_about_network_async); - findViewById(R.id.btn_open_wireless_settings).setOnClickListener(this); - findViewById(R.id.btn_set_wifi_enabled).setOnClickListener(this); - updateAboutNetwork(); - } - - @Override - public void doBusiness() { - ThreadUtils.executeBySingle(mSimpleTask); - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_open_wireless_settings: - NetworkUtils.openWirelessSettings(); - break; - case R.id.btn_set_data_enabled: - NetworkUtils.setMobileDataEnabled(!NetworkUtils.getMobileDataEnabled()); - break; - case R.id.btn_set_wifi_enabled: - NetworkUtils.setWifiEnabled(!NetworkUtils.getWifiEnabled()); - break; - } - updateAboutNetwork(); - } - - private void updateAboutNetwork() { - tvAboutNetwork.setText(new SpanUtils() - .appendLine("isConnected: " + NetworkUtils.isConnected()) - .appendLine("getMobileDataEnabled: " + NetworkUtils.getMobileDataEnabled()) - .appendLine("isMobileData: " + NetworkUtils.isMobileData()) - .appendLine("is4G: " + NetworkUtils.is4G()) - .appendLine("getWifiEnabled: " + NetworkUtils.getWifiEnabled()) - .appendLine("isWifiConnected: " + NetworkUtils.isWifiConnected()) - .appendLine("isWifiAvailable: " + NetworkUtils.isWifiAvailable()) - .appendLine("getNetworkOperatorName: " + NetworkUtils.getNetworkOperatorName()) - .appendLine("getNetworkTypeName: " + NetworkUtils.getNetworkType()) - .appendLine("getIPv4Address: " + NetworkUtils.getIPAddress(true)) - .appendLine("getIPv6Address: " + NetworkUtils.getIPAddress(false)) - .appendLine("getBroadcastIpAddress: " + NetworkUtils.getBroadcastIpAddress()) - .appendLine("getIpAddressByWifi: " + NetworkUtils.getIpAddressByWifi()) - .appendLine("getGatewayByWifi: " + NetworkUtils.getGatewayByWifi()) - .appendLine("getNetMaskByWifi: " + NetworkUtils.getNetMaskByWifi()) - .append("getServerAddressByWifi: " + NetworkUtils.getServerAddressByWifi()) - .create() - ); - } - - @Override - protected void onDestroy() { - mSimpleTask.cancel(); - super.onDestroy(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/path/PathActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/path/PathActivity.java deleted file mode 100644 index 41a9850f2b..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/path/PathActivity.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.blankj.androidutilcode.feature.core.path; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.PathUtils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about PathUtils
- * 
- */ -public class PathActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, PathActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_path; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_path)); - - TextView tvAboutMetaData = findViewById(R.id.tv_about_path); - tvAboutMetaData.setText(new SpanUtils() - .appendLine("getRootPath: " + PathUtils.getRootPath()) - .appendLine("getDataPath: " + PathUtils.getDataPath()) - .appendLine("getDownloadCachePath: " + PathUtils.getDownloadCachePath()) - - .appendLine("getInternalAppDataPath: " + PathUtils.getInternalAppDataPath()) - .appendLine("getInternalAppCodeCacheDir: " + PathUtils.getInternalAppCodeCacheDir()) - .appendLine("getInternalAppCachePath: " + PathUtils.getInternalAppCachePath()) - .appendLine("getInternalAppDbsPath: " + PathUtils.getInternalAppDbsPath()) - .appendLine("getInternalAppDbPath: " + PathUtils.getInternalAppDbPath("demo")) - .appendLine("getInternalAppFilesPath: " + PathUtils.getInternalAppFilesPath()) - .appendLine("getInternalAppSpPath: " + PathUtils.getInternalAppSpPath()) - .appendLine("getInternalAppNoBackupFilesPath: " + PathUtils.getInternalAppNoBackupFilesPath()) - - .appendLine("getExternalStoragePath: " + PathUtils.getExternalStoragePath()) - .appendLine("getExternalMusicPath: " + PathUtils.getExternalMusicPath()) - .appendLine("getExternalPodcastsPath: " + PathUtils.getExternalPodcastsPath()) - .appendLine("getExternalRingtonesPath: " + PathUtils.getExternalRingtonesPath()) - .appendLine("getExternalAlarmsPath: " + PathUtils.getExternalAlarmsPath()) - .appendLine("getExternalNotificationsPath: " + PathUtils.getExternalNotificationsPath()) - .appendLine("getExternalPicturesPath: " + PathUtils.getExternalPicturesPath()) - .appendLine("getExternalMoviesPath: " + PathUtils.getExternalMoviesPath()) - .appendLine("getExternalDownloadsPath: " + PathUtils.getExternalDownloadsPath()) - .appendLine("getExternalDcimPath: " + PathUtils.getExternalDcimPath()) - .appendLine("getExternalDocumentsPath: " + PathUtils.getExternalDocumentsPath()) - - .appendLine("getExternalAppDataPath: " + PathUtils.getExternalAppDataPath()) - .appendLine("getExternalAppCachePath: " + PathUtils.getExternalAppCachePath()) - .appendLine("getExternalAppFilesPath: " + PathUtils.getExternalAppFilesPath()) - .appendLine("getExternalAppMusicPath: " + PathUtils.getExternalAppMusicPath()) - .appendLine("getExternalAppPodcastsPath: " + PathUtils.getExternalAppPodcastsPath()) - .appendLine("getExternalAppRingtonesPath: " + PathUtils.getExternalAppRingtonesPath()) - .appendLine("getExternalAppAlarmsPath: " + PathUtils.getExternalAppAlarmsPath()) - .appendLine("getExternalAppNotificationsPath: " + PathUtils.getExternalAppNotificationsPath()) - .appendLine("getExternalAppPicturesPath: " + PathUtils.getExternalAppPicturesPath()) - .appendLine("getExternalAppMoviesPath: " + PathUtils.getExternalAppMoviesPath()) - .appendLine("getExternalAppDownloadPath: " + PathUtils.getExternalAppDownloadPath()) - .appendLine("getExternalAppDcimPath: " + PathUtils.getExternalAppDcimPath()) - .appendLine("getExternalAppDocumentsPath: " + PathUtils.getExternalAppDocumentsPath()) - .appendLine("getExternalAppObbPath: " + PathUtils.getExternalAppObbPath()) - .append("") - .create()); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/permission/PermissionActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/permission/PermissionActivity.java deleted file mode 100644 index 8e92f82812..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/permission/PermissionActivity.java +++ /dev/null @@ -1,179 +0,0 @@ -package com.blankj.androidutilcode.feature.core.permission; - -import android.Manifest; -import android.app.Activity; -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.androidutilcode.helper.DialogHelper; -import com.blankj.utilcode.constant.PermissionConstants; -import com.blankj.utilcode.util.LogUtils; -import com.blankj.utilcode.util.PermissionUtils; -import com.blankj.utilcode.util.ScreenUtils; -import com.blankj.utilcode.util.SpanUtils; - -import java.util.List; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/01/01
- *     desc  : demo about PermissionUtils
- * 
- */ -public class PermissionActivity extends BaseBackActivity { - - TextView tvAboutPermission; - String permissions; - - public static void start(Context context) { - Intent starter = new Intent(context, PermissionActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_permission; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_permission)); - - tvAboutPermission = findViewById(R.id.tv_about_permission); - findViewById(R.id.btn_open_app_settings).setOnClickListener(this); - findViewById(R.id.btn_request_calendar).setOnClickListener(this); - findViewById(R.id.btn_request_record_audio).setOnClickListener(this); - findViewById(R.id.btn_request_calendar_and_record_audio).setOnClickListener(this); - - StringBuilder sb = new StringBuilder(); - for (String s : PermissionUtils.getPermissions()) { - sb.append(s.substring(s.lastIndexOf('.') + 1)).append("\n"); - } - permissions = sb.toString(); - } - - @Override - protected void onResume() { - super.onResume(); - updateAboutPermission(); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_open_app_settings: - PermissionUtils.launchAppDetailsSettings(); - break; - case R.id.btn_request_calendar: - PermissionUtils.permission(PermissionConstants.CALENDAR) - .rationale(new PermissionUtils.OnRationaleListener() { - @Override - public void rationale(final ShouldRequest shouldRequest) { - DialogHelper.showRationaleDialog(shouldRequest); - } - }) - .callback(new PermissionUtils.FullCallback() { - @Override - public void onGranted(List permissionsGranted) { - updateAboutPermission(); - LogUtils.d(permissionsGranted); - } - - @Override - public void onDenied(List permissionsDeniedForever, - List permissionsDenied) { - if (!permissionsDeniedForever.isEmpty()) { - DialogHelper.showOpenAppSettingDialog(); - } - LogUtils.d(permissionsDeniedForever, permissionsDenied); - } - }) - .theme(new PermissionUtils.ThemeCallback() { - @Override - public void onActivityCreate(Activity activity) { - ScreenUtils.setFullScreen(activity); - } - }) - .request(); - break; - case R.id.btn_request_record_audio: - PermissionUtils.permission(PermissionConstants.MICROPHONE) - .rationale(new PermissionUtils.OnRationaleListener() { - @Override - public void rationale(final ShouldRequest shouldRequest) { - DialogHelper.showRationaleDialog(shouldRequest); - } - }) - .callback(new PermissionUtils.FullCallback() { - @Override - public void onGranted(List permissionsGranted) { - updateAboutPermission(); - LogUtils.d(permissionsGranted); - } - - @Override - public void onDenied(List permissionsDeniedForever, - List permissionsDenied) { - if (!permissionsDeniedForever.isEmpty()) { - DialogHelper.showOpenAppSettingDialog(); - } - LogUtils.d(permissionsDeniedForever, permissionsDenied); - } - }) - .request(); - break; - case R.id.btn_request_calendar_and_record_audio: - PermissionUtils.permission(PermissionConstants.CALENDAR, PermissionConstants.MICROPHONE) - .rationale(new PermissionUtils.OnRationaleListener() { - @Override - public void rationale(final ShouldRequest shouldRequest) { - DialogHelper.showRationaleDialog(shouldRequest); - } - }) - .callback(new PermissionUtils.FullCallback() { - @Override - public void onGranted(List permissionsGranted) { - updateAboutPermission(); - LogUtils.d(permissionsGranted); - } - - @Override - public void onDenied(List permissionsDeniedForever, - List permissionsDenied) { - if (!permissionsDeniedForever.isEmpty()) { - DialogHelper.showOpenAppSettingDialog(); - } - LogUtils.d(permissionsDeniedForever, permissionsDenied); - } - }) - .request(); - break; - } - } - - private void updateAboutPermission() { - tvAboutPermission.setText(new SpanUtils() - .append(permissions).setBold() - .appendLine("READ_CALENDAR: " + PermissionUtils.isGranted(Manifest.permission.READ_CALENDAR)) - .appendLine("RECORD_AUDIO: " + PermissionUtils.isGranted(Manifest.permission.RECORD_AUDIO)) - .create()); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/phone/PhoneActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/phone/PhoneActivity.java deleted file mode 100644 index a0b2abc63b..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/phone/PhoneActivity.java +++ /dev/null @@ -1,127 +0,0 @@ -package com.blankj.androidutilcode.feature.core.phone; - -import android.annotation.SuppressLint; -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.androidutilcode.helper.PermissionHelper; -import com.blankj.utilcode.util.PhoneUtils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about PhoneUtils
- * 
- */ -public class PhoneActivity extends BaseBackActivity { - - private TextView tvAboutPhone; - - public static void start(Context context) { - Intent starter = new Intent(context, PhoneActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_phone; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_phone)); - - findViewById(R.id.btn_dial).setOnClickListener(this); - findViewById(R.id.btn_call).setOnClickListener(this); - findViewById(R.id.btn_send_sms).setOnClickListener(this); - findViewById(R.id.btn_send_sms_silent).setOnClickListener(this); - tvAboutPhone = findViewById(R.id.tv_about_phone); - - PermissionHelper.requestPhone( - new PermissionHelper.OnPermissionGrantedListener() { - @SuppressLint("MissingPermission") - @Override - public void onPermissionGranted() { - tvAboutPhone.setText(new SpanUtils() - .appendLine("isPhone: " + PhoneUtils.isPhone()) - .appendLine("getDeviceId: " + PhoneUtils.getDeviceId()) - .appendLine("getIMEI: " + PhoneUtils.getIMEI()) - .appendLine("getMEID: " + PhoneUtils.getMEID()) - .appendLine("getIMSI: " + PhoneUtils.getIMSI()) - .appendLine("getPhoneType: " + PhoneUtils.getPhoneType()) - .appendLine("isSimCardReady: " + PhoneUtils.isSimCardReady()) - .appendLine("getSimOperatorName: " + PhoneUtils.getSimOperatorName()) - .appendLine("getSimOperatorByMnc: " + PhoneUtils.getSimOperatorByMnc()) - .appendLine("getPhoneStatus: " + PhoneUtils.getPhoneStatus()) - .create()); - } - }, - new PermissionHelper.OnPermissionDeniedListener() { - @Override - public void onPermissionDenied() { - tvAboutPhone.setText(new SpanUtils() - .appendLine("isPhone: " + PhoneUtils.isPhone()) - .appendLine("getDeviceId: " + "need permission") - .appendLine("getIMEI: " + "need permission") - .appendLine("getMEID: " + "need permission") - .appendLine("getIMSI: " + "need permission") - .appendLine("getPhoneType: " + PhoneUtils.getPhoneType()) - .appendLine("isSimCardReady: " + PhoneUtils.isSimCardReady()) - .appendLine("getSimOperatorName: " + PhoneUtils.getSimOperatorName()) - .appendLine("getSimOperatorByMnc: " + PhoneUtils.getSimOperatorByMnc()) - .appendLine("getPhoneStatus: " + "need permission") - .create()); - } - } - ); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_dial: - PhoneUtils.dial("10000"); - break; - case R.id.btn_call: - PermissionHelper.requestPhone(new PermissionHelper.OnPermissionGrantedListener() { - @SuppressLint("MissingPermission") - @Override - public void onPermissionGranted() { - PhoneUtils.call("10000"); - } - }); - break; - case R.id.btn_send_sms: - PhoneUtils.sendSms("10000", "sendSms"); - break; - case R.id.btn_send_sms_silent: - PermissionHelper.requestSms(new PermissionHelper.OnPermissionGrantedListener() { - @SuppressLint("MissingPermission") - @Override - public void onPermissionGranted() { - PhoneUtils.sendSmsSilent("10000", "sendSmsSilent"); - } - }); - break; - } - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/process/ProcessActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/process/ProcessActivity.java deleted file mode 100644 index a262a23ec9..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/process/ProcessActivity.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.blankj.androidutilcode.feature.core.process; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.ProcessUtils; -import com.blankj.utilcode.util.SpanUtils; - -import java.util.Iterator; -import java.util.Set; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about ProcessUtils
- * 
- */ -public class ProcessActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, ProcessActivity.class); - context.startActivity(starter); - } - - private TextView tvAboutProcess; - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_process; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_process)); - - findViewById(R.id.btn_kill_all_background_processes).setOnClickListener(this); - tvAboutProcess = findViewById(R.id.tv_about_process); - Set set = ProcessUtils.getAllBackgroundProcesses(); - tvAboutProcess.setText(new SpanUtils() - .appendLine("getForegroundProcessName: " + ProcessUtils.getForegroundProcessName()) - .appendLine("getAllBackgroundProcesses: " + getSetItems(set)) - .appendLine("size: " + set.size()) - .appendLine("isMainProcess: " + ProcessUtils.isMainProcess()) - .append("getCurrentProcessName: " + ProcessUtils.getCurrentProcessName()) - .create() - ); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_kill_all_background_processes: - Set set = ProcessUtils.getAllBackgroundProcesses(); - Set set1 = ProcessUtils.killAllBackgroundProcesses(); - tvAboutProcess.setText(new SpanUtils() - .appendLine("getForegroundProcessName: " + ProcessUtils.getForegroundProcessName()) - .appendLine("getAllBackgroundProcesses: " + getSetItems(set)) - .appendLine("size: " + set.size()) - .appendLine("killAllBackgroundProcesses: " + getSetItems(set1)) - .appendLine("size: " + set1.size()) - .appendLine("isMainProcess: " + ProcessUtils.isMainProcess()) - .append("getCurrentProcessName: " + ProcessUtils.getCurrentProcessName()) - .create() - ); - break; - } - } - - private String getSetItems(Set set) { - Iterator iterator = set.iterator(); - StringBuilder sb = new StringBuilder(); - while (iterator.hasNext()) { - sb.append(iterator.next()).append("\n"); - } - return sb.toString(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/reflect/ReflectActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/reflect/ReflectActivity.java deleted file mode 100644 index 40d9779805..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/reflect/ReflectActivity.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.blankj.androidutilcode.feature.core.reflect; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.ReflectUtils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/01/29
- *     desc  : demo about ReflectUtils
- * 
- */ -public class ReflectActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, ReflectActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_reflect; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_reflect)); - - TextView tvAboutReflect = findViewById(R.id.tv_about_reflect); - - tvAboutReflect.setText(new SpanUtils() - .appendLine("before reflect: " + ReflectUtils.reflect(TestPrivateStaticFinal.class).field("I1").get()) - .append("after reflect: " + ReflectUtils.reflect(TestPrivateStaticFinal.class).field("I1", 2).field("I1").get()) - .create()); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/reflect/TestPrivateStaticFinal.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/reflect/TestPrivateStaticFinal.java deleted file mode 100755 index 03c512d21c..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/reflect/TestPrivateStaticFinal.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.blankj.androidutilcode.feature.core.reflect; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/01/12
- *     desc  : demo about ReflectUtils
- * 
- */ -public class TestPrivateStaticFinal { - private static final int I1 = 1; - - public static int getI1() { - return I1; - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/resource/ResourceActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/resource/ResourceActivity.java deleted file mode 100644 index e4d459abc6..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/resource/ResourceActivity.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.blankj.androidutilcode.feature.core.resource; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.Config; -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.ResourceUtils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/05/07
- *     desc  :
- * 
- */ -public class ResourceActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, ResourceActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_resource; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - findViewById(R.id.btn_resource_test_assets).setOnClickListener(this); - findViewById(R.id.btn_resource_test_raw).setOnClickListener(this); - TextView tvAboutResource = findViewById(R.id.tv_about_resource); - - tvAboutResource.setText(new SpanUtils() - .appendLine("readAssets2String: " + ResourceUtils.readAssets2String("test/test.txt")) - .appendLine("readAssets2List: " + ResourceUtils.readAssets2List("test/test.txt").toString()) - .append("readRaw2List: " + ResourceUtils.readRaw2List(R.raw.test).toString()) - .create()); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_resource_test_assets: - ResourceUtils.copyFileFromAssets("test", Config.CACHE_PATH + "/assets/test"); - break; - case R.id.btn_resource_test_raw: - ResourceUtils.copyFileFromRaw(R.raw.test, Config.CACHE_PATH + "/raw/test.txt"); - break; - } - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/sdcard/SDCardActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/sdcard/SDCardActivity.java deleted file mode 100644 index 1d61cac3c5..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/sdcard/SDCardActivity.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.blankj.androidutilcode.feature.core.sdcard; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.SDCardUtils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/27
- *     desc  : demo about SDCardUtils
- * 
- */ -public class SDCardActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, SDCardActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_sdcard; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_sdcard)); - - TextView tvAboutSdcard = findViewById(R.id.tv_about_sdcard); - tvAboutSdcard.setText(new SpanUtils() - .appendLine("isSDCardEnableByEnvironment: " + SDCardUtils.isSDCardEnableByEnvironment()) - .appendLine("getSDCardPathByEnvironment: " + SDCardUtils.getSDCardPathByEnvironment()) - .appendLine("isSDCardEnable: " + SDCardUtils.isSDCardEnable()) - .appendLine("getSDCardPaths: " + SDCardUtils.getSDCardPaths()) - .appendLine("getInnerSDCardPaths: " + SDCardUtils.getSDCardPaths(true)) - .appendLine("getOuterSDCardPaths: " + SDCardUtils.getSDCardPaths(false)) - .create() - ); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/snackbar/SnackbarActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/snackbar/SnackbarActivity.java deleted file mode 100644 index 080ae85b5e..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/snackbar/SnackbarActivity.java +++ /dev/null @@ -1,205 +0,0 @@ -package com.blankj.androidutilcode.feature.core.snackbar; - -import android.content.Context; -import android.content.Intent; -import android.graphics.Color; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.annotation.StringRes; -import android.text.SpannableStringBuilder; -import android.view.View; -import android.view.ViewGroup; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.SnackbarUtils; -import com.blankj.utilcode.util.SpanUtils; -import com.blankj.utilcode.util.ToastUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/17
- *     desc  : demo about SnackbarUtils
- * 
- */ -public class SnackbarActivity extends BaseBackActivity { - - View snackBarRootView; - - public static void start(Context context) { - Intent starter = new Intent(context, SnackbarActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_snackbar; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_snackbar)); - - snackBarRootView = findViewById(android.R.id.content); - findViewById(R.id.btn_short_snackbar).setOnClickListener(this); - findViewById(R.id.btn_short_snackbar_with_action).setOnClickListener(this); - findViewById(R.id.btn_long_snackbar).setOnClickListener(this); - findViewById(R.id.btn_long_snackbar_with_action).setOnClickListener(this); - findViewById(R.id.btn_indefinite_snackbar).setOnClickListener(this); - findViewById(R.id.btn_indefinite_snackbar_with_action).setOnClickListener(this); - findViewById(R.id.btn_add_view).setOnClickListener(this); - findViewById(R.id.btn_add_view_with_action).setOnClickListener(this); - findViewById(R.id.btn_show_success).setOnClickListener(this); - findViewById(R.id.btn_show_warning).setOnClickListener(this); - findViewById(R.id.btn_show_error).setOnClickListener(this); - findViewById(R.id.btn_dismiss_snackbar).setOnClickListener(this); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_short_snackbar: - SnackbarUtils.with(snackBarRootView) - .setMessage(getMsg(R.string.snackbar_short)) - .setMessageColor(Color.WHITE) - .setBgResource(R.drawable.snackbar_custom_bg) - .show(); - break; - - case R.id.btn_short_snackbar_with_action: - SnackbarUtils.with(snackBarRootView) - .setMessage(getMsg(R.string.snackbar_short)) - .setMessageColor(Color.WHITE) - .setBgResource(R.drawable.snackbar_custom_bg) - .setAction(getString(R.string.snackbar_click), Color.YELLOW, new View.OnClickListener() { - @Override - public void onClick(View v) { - ToastUtils.showShort(getString(R.string.snackbar_click)); - } - }) - .show(); - break; - - case R.id.btn_long_snackbar: - SnackbarUtils.with(snackBarRootView) - .setMessage(getMsg(R.string.snackbar_long)) - .setMessageColor(Color.WHITE) - .setDuration(SnackbarUtils.LENGTH_LONG) - .setBgResource(R.drawable.snackbar_custom_bg) - .show(); - break; - - case R.id.btn_long_snackbar_with_action: - SnackbarUtils.with(snackBarRootView) - .setMessage(getMsg(R.string.snackbar_long)) - .setMessageColor(Color.WHITE) - .setBgResource(R.drawable.snackbar_custom_bg) - .setDuration(SnackbarUtils.LENGTH_LONG) - .setAction(getString(R.string.snackbar_click), Color.YELLOW, new View.OnClickListener() { - @Override - public void onClick(View v) { - ToastUtils.showShort(getString(R.string.snackbar_click)); - } - }) - .show(); - break; - - case R.id.btn_indefinite_snackbar: - SnackbarUtils.with(snackBarRootView) - .setMessage(getMsg(R.string.snackbar_indefinite)) - .setMessageColor(Color.WHITE) - .setDuration(SnackbarUtils.LENGTH_INDEFINITE) - .setBgResource(R.drawable.snackbar_custom_bg) - .show(); - break; - - case R.id.btn_indefinite_snackbar_with_action: - SnackbarUtils.with(snackBarRootView) - .setMessage(getMsg(R.string.snackbar_indefinite)) - .setMessageColor(Color.WHITE) - .setDuration(SnackbarUtils.LENGTH_INDEFINITE) - .setBgResource(R.drawable.snackbar_custom_bg) - .setAction(getString(R.string.snackbar_click), Color.YELLOW, new View.OnClickListener() { - @Override - public void onClick(View v) { - ToastUtils.showShort(getString(R.string.snackbar_click)); - } - }) - .show(); - break; - - case R.id.btn_add_view: - ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); - SnackbarUtils.with(snackBarRootView) - .setBgColor(Color.TRANSPARENT) - .setDuration(SnackbarUtils.LENGTH_INDEFINITE) - .show(); - SnackbarUtils.addView(R.layout.snackbar_custom, params); - break; - - case R.id.btn_add_view_with_action: - SnackbarUtils.with(snackBarRootView) - .setBgColor(Color.TRANSPARENT) - .setDuration(SnackbarUtils.LENGTH_INDEFINITE) - .show(); - params = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, - ViewGroup.LayoutParams.MATCH_PARENT); - SnackbarUtils.addView(R.layout.snackbar_custom, params); - View snackbarView = SnackbarUtils.getView(); - if (snackbarView != null) { - TextView tvSnackbarCustom = snackbarView.findViewById(R.id.tv_snackbar_custom); - tvSnackbarCustom.setText("点我可消失"); - snackbarView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - SnackbarUtils.dismiss(); - } - }); - } - break; - - case R.id.btn_show_success: - SnackbarUtils.with(snackBarRootView) - .setMessage(getMsg(R.string.snackbar_success)) - .showSuccess(); - break; - - case R.id.btn_show_warning: - SnackbarUtils.with(snackBarRootView) - .setMessage(getMsg(R.string.snackbar_warning)) - .showWarning(); - break; - - case R.id.btn_show_error: - SnackbarUtils.with(snackBarRootView) - .setMessage(getMsg(R.string.snackbar_error)) - .showError(); - break; - - case R.id.btn_dismiss_snackbar: - SnackbarUtils.dismiss(); - break; - } - } - - private SpannableStringBuilder getMsg(@StringRes int resId) { - return new SpanUtils() - .appendImage(R.mipmap.ic_launcher, SpanUtils.ALIGN_CENTER) - .appendSpace(32) - .append(getString(resId)).setFontSize(24, true) - .create(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/sp/SPActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/sp/SPActivity.java deleted file mode 100644 index 4bb0181913..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/sp/SPActivity.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.blankj.androidutilcode.feature.core.sp; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.androidutilcode.data.DataManager; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/01/08
- *     desc  : demo about SPUtils
- * 
- */ -public class SPActivity extends BaseBackActivity { - - private TextView tvAboutSp; - - public static void start(Context context) { - Intent starter = new Intent(context, SPActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_sp; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - tvAboutSp = findViewById(R.id.tv_about_sp); - findViewById(R.id.btn_sp_put_string).setOnClickListener(this); - findViewById(R.id.btn_sp_put_int).setOnClickListener(this); - findViewById(R.id.btn_sp_put_long).setOnClickListener(this); - findViewById(R.id.btn_sp_put_float).setOnClickListener(this); - findViewById(R.id.btn_sp_put_boolean).setOnClickListener(this); - findViewById(R.id.btn_sp_clear).setOnClickListener(this); - } - - @Override - public void doBusiness() { - updateAboutSp(); - } - - @Override - public void onWidgetClick(View view) { - switch (view.getId()) { - case R.id.btn_sp_put_string: - DataManager.putString(); - break; - case R.id.btn_sp_put_int: - DataManager.putInt(); - break; - case R.id.btn_sp_put_long: - DataManager.putLong(); - break; - case R.id.btn_sp_put_float: - DataManager.putFloat(); - break; - case R.id.btn_sp_put_boolean: - DataManager.putBoolean(); - break; - case R.id.btn_sp_clear: - DataManager.clear(); - break; - } - updateAboutSp(); - } - - private void updateAboutSp() { - tvAboutSp.setText(DataManager.sp2String()); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/BlurMaskFilterSpan.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/span/BlurMaskFilterSpan.java deleted file mode 100644 index 029d42706e..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/BlurMaskFilterSpan.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.blankj.androidutilcode.feature.core.span; - -import android.graphics.BlurMaskFilter; -import android.graphics.MaskFilter; -import android.text.TextPaint; -import android.text.style.CharacterStyle; -import android.text.style.UpdateAppearance; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/27
- *     desc  : demo about SpanUtils
- * 
- */ -public class BlurMaskFilterSpan extends CharacterStyle implements UpdateAppearance { - - private float mRadius; - private MaskFilter mFilter; - - public BlurMaskFilterSpan(float radius) { - mRadius = radius; - } - - public void setRadius(float radius) { - mRadius = radius; - mFilter = new BlurMaskFilter(mRadius, BlurMaskFilter.Blur.NORMAL); - } - - public float getRadius() { - return mRadius; - } - - @Override - public void updateDrawState(TextPaint ds) { - ds.setMaskFilter(mFilter); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/ForegroundAlphaColorSpan.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/span/ForegroundAlphaColorSpan.java deleted file mode 100644 index 5b1c5026a2..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/ForegroundAlphaColorSpan.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.blankj.androidutilcode.feature.core.span; - -import android.graphics.Color; -import android.support.annotation.ColorInt; -import android.text.TextPaint; -import android.text.style.CharacterStyle; -import android.text.style.UpdateAppearance; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/27
- *     desc  : demo about SpanUtils
- * 
- */ -public class ForegroundAlphaColorSpan extends CharacterStyle - implements UpdateAppearance { - - private int mColor; - - public ForegroundAlphaColorSpan(@ColorInt int color) { - mColor = color; - } - - public void setAlpha(int alpha) { - mColor = Color.argb(alpha, Color.red(mColor), Color.green(mColor), Color.blue(mColor)); - } - - @Override - public void updateDrawState(TextPaint ds) { - ds.setColor(mColor); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/ForegroundAlphaColorSpanGroup.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/span/ForegroundAlphaColorSpanGroup.java deleted file mode 100644 index 86df9615df..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/ForegroundAlphaColorSpanGroup.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.blankj.androidutilcode.feature.core.span; - -import java.util.ArrayList; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/27
- *     desc  : demo about SpanUtils
- * 
- */ -public class ForegroundAlphaColorSpanGroup { - - private final float mAlpha; - - private final ArrayList mSpans; - - public ForegroundAlphaColorSpanGroup(float alpha) { - mAlpha = alpha; - mSpans = new ArrayList<>(); - } - - public void addSpan(ForegroundAlphaColorSpan span) { - span.setAlpha((int) (mAlpha * 255)); - mSpans.add(span); - } - - public void setAlpha(float alpha) { - int size = mSpans.size(); - float total = 1.0f * size * alpha; - for (int index = 0; index < size; index++) { - ForegroundAlphaColorSpan span = mSpans.get(index); - if (total >= 1.0f) { - span.setAlpha(255); - total -= 1.0f; - } else { - span.setAlpha((int) (total * 255)); - total = 0.0f; - } - } - } - - public float getAlpha() { - return mAlpha; - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/ShadowSpan.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/span/ShadowSpan.java deleted file mode 100644 index 457c575ce9..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/ShadowSpan.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.blankj.androidutilcode.feature.core.span; - -import android.text.TextPaint; -import android.text.style.CharacterStyle; -import android.text.style.UpdateAppearance; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/27
- *     desc  : demo about SpanUtils
- * 
- */ -public class ShadowSpan extends CharacterStyle implements UpdateAppearance { - private float radius; - private float dx; - private float dy; - private int shadowColor; - - public ShadowSpan(float radius, float dx, float dy, int shadowColor) { - this.radius = radius; - this.dx = dx; - this.dy = dy; - this.shadowColor = shadowColor; - } - - public float getDx() { - return dx; - } - - public void setDx(float dx) { - this.dx = dx; - } - - public float getDy() { - return dy; - } - - public void setDy(float dy) { - this.dy = dy; - } - - @Override - public void updateDrawState(TextPaint tp) { - tp.setShadowLayer(radius, dx, dy, shadowColor); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/SpanActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/span/SpanActivity.java deleted file mode 100644 index 833659d2a4..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/span/SpanActivity.java +++ /dev/null @@ -1,268 +0,0 @@ -package com.blankj.androidutilcode.feature.core.span; - -import android.animation.ValueAnimator; -import android.content.Context; -import android.content.Intent; -import android.graphics.Color; -import android.graphics.LinearGradient; -import android.graphics.Matrix; -import android.graphics.Shader; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.content.ContextCompat; -import android.text.SpannableStringBuilder; -import android.text.TextPaint; -import android.text.method.LinkMovementMethod; -import android.text.style.ClickableSpan; -import android.view.View; -import android.view.animation.LinearInterpolator; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.SpanUtils; -import com.blankj.utilcode.util.ToastUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/27
- *     desc  : demo about SpanUtils
- * 
- */ -public class SpanActivity extends BaseBackActivity { - - SpanUtils mSpanUtils; - SpannableStringBuilder animSsb; - - int lineHeight; - float textSize; - ValueAnimator valueAnimator; - Shader mShader; - float mShaderWidth; - Matrix matrix; - - BlurMaskFilterSpan mBlurMaskFilterSpan; - - ShadowSpan mShadowSpan; - - ForegroundAlphaColorSpan mForegroundAlphaColorSpan; - - ForegroundAlphaColorSpanGroup mForegroundAlphaColorSpanGroup; - - String mPrinterString; - - - float density; - TextView tvAboutSpan; - TextView tvAboutAnimSpan; - - public static void start(Context context) { - Intent starter = new Intent(context, SpanActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_span; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_span)); - - ClickableSpan clickableSpan = new ClickableSpan() { - @Override - public void onClick(View widget) { - ToastUtils.showShort("事件触发了"); - } - - @Override - public void updateDrawState(TextPaint ds) { - ds.setColor(Color.BLUE); - ds.setUnderlineText(false); - } - }; - - tvAboutSpan = findViewById(R.id.tv_about_span); - tvAboutAnimSpan = findViewById(R.id.tv_about_anim_span); - - // 响应点击事件的话必须设置以下属性 - tvAboutSpan.setMovementMethod(LinkMovementMethod.getInstance()); - // 去掉点击事件后的高亮 - tvAboutSpan.setHighlightColor(ContextCompat.getColor(this, android.R.color.transparent)); - lineHeight = tvAboutSpan.getLineHeight(); - textSize = tvAboutSpan.getTextSize(); - density = getResources().getDisplayMetrics().density; - -// initAnimSpan(); -// startAnim(); - - - tvAboutSpan.setText(new SpanUtils() -// .appendImage(R.drawable.shape_spannable_block_high, SpanUtils.ALIGN_TOP) -// .append("大图").setBackgroundColor(Color.LTGRAY) -// .appendImage(R.drawable.shape_spannable_block_high, SpanUtils.ALIGN_TOP) -// .append("顶部").setBackgroundColor(Color.LTGRAY) -// .appendImage(R.drawable.shape_spannable_block_high, SpanUtils.ALIGN_TOP) -// .appendLine("对齐").setBackgroundColor(Color.LTGRAY) -// -// .appendImage(R.drawable.shape_spannable_block_high, SpanUtils.ALIGN_CENTER) -// .append("大图").setBackgroundColor(Color.GREEN) -// .appendImage(R.drawable.shape_spannable_block_high, SpanUtils.ALIGN_CENTER) -// .append("居中").setBackgroundColor(Color.GREEN) -// .appendImage(R.drawable.shape_spannable_block_high, SpanUtils.ALIGN_CENTER) -// .appendLine("对齐").setBackgroundColor(Color.GREEN) -// -// .appendImage(R.drawable.shape_spannable_block_high, SpanUtils.ALIGN_BOTTOM) -// .append("大图").setBackgroundColor(Color.LTGRAY) -// .appendImage(R.drawable.shape_spannable_block_high, SpanUtils.ALIGN_BOTTOM) -// .append("底部").setBackgroundColor(Color.LTGRAY) -// .appendImage(R.drawable.shape_spannable_block_high, SpanUtils.ALIGN_BOTTOM) -// .appendLine("对齐").setBackgroundColor(Color.LTGRAY) -// -// .appendLine("SpanUtils").setBackgroundColor(Color.LTGRAY).setBold().setForegroundColor(Color.YELLOW).setAlign(Layout.Alignment.ALIGN_CENTER) -// .appendLine("前景色").setForegroundColor(Color.GREEN) -// .appendLine("背景色").setBackgroundColor(Color.LTGRAY) - .append("行高顶部对齐").setLineHeight(3 * lineHeight, SpanUtils.ALIGN_TOP).setFontSize(20).setBackgroundColor(Color.GREEN) - .append("行高").setLineHeight(3 * lineHeight, SpanUtils.ALIGN_CENTER).setFontSize(40).setBackgroundColor(Color.LTGRAY) - .appendLine("行高顶部").setLineHeight(3 * lineHeight, SpanUtils.ALIGN_BOTTOM).setFontSize(60).setBackgroundColor(Color.LTGRAY) - .append("行高").setFontSize(100).setBackgroundColor(Color.GREEN) - .append("行高").setFontSize(20).setBackgroundColor(Color.LTGRAY).setUnderline().setVerticalAlign(SpanUtils.ALIGN_CENTER) -// .appendLine("行高居中对齐").setLineHeight(2 * lineHeight, SpanUtils.ALIGN_CENTER).setBackgroundColor(Color.LTGRAY) -// .appendLine("行高底部对齐").setLineHeight(2 * lineHeight, SpanUtils.ALIGN_BOTTOM).setBackgroundColor(Color.GREEN) -// .appendLine("测试段落缩,首行缩进两字,其他行不缩进").setLeadingMargin((int) textSize * 2, 10).setBackgroundColor(Color.GREEN) -// .appendLine("测试引用,后面的字是为了凑到两行的效果").setQuoteColor(Color.GREEN, 10, 10).setBackgroundColor(Color.LTGRAY) -// .appendLine("测试列表项,后面的字是为了凑到两行的效果").setBullet(Color.GREEN, 20, 10).setBackgroundColor(Color.LTGRAY).setBackgroundColor(Color.GREEN) -// .appendLine("32dp 字体").setFontSize(32, true) -// .appendLine("2 倍字体").setFontProportion(2) -// .appendLine("横向 2 倍字体").setFontXProportion(1.5f) -// .appendLine("删除线").setStrikethrough() -// .appendLine("下划线").setUnderline() -// .append("测试").appendLine("上标").setSuperscript() -// .append("测试").appendLine("下标").setSubscript() -// .appendLine("粗体").setBold() -// .appendLine("斜体").setItalic() -// .appendLine("粗斜体").setBoldItalic() -// .appendLine("monospace 字体").setFontFamily("monospace") -// .appendLine("自定义字体").setTypeface(Typeface.createFromAsset(getAssets(), "fonts/dnmbhs.ttf")) -// .appendLine("相反对齐").setAlign(Layout.Alignment.ALIGN_OPPOSITE) -// .appendLine("居中对齐").setAlign(Layout.Alignment.ALIGN_CENTER) -// .appendLine("正常对齐").setAlign(Layout.Alignment.ALIGN_NORMAL) -// .append("测试").appendLine("点击事件").setClickSpan(clickableSpan) -// .append("测试").appendLine("Url").setUrl("https://github.com/Blankj/AndroidUtilCode") -// .append("测试").appendLine("模糊").setBlur(3, BlurMaskFilter.Blur.NORMAL) -// .appendLine("颜色渐变").setShader(new LinearGradient(0, 0, -// 64 * density * 4, 0, -// getResources().getIntArray(R.array.rainbow), -// null, -// Shader.TileMode.REPEAT)).setFontSize(64, true) -// .appendLine("图片着色").setFontSize(64, true).setShader(new BitmapShader(BitmapFactory.decodeResource(getResources(), R.drawable.span_cheetah), -// Shader.TileMode.REPEAT, -// Shader.TileMode.REPEAT)) -// .appendLine("阴影效果").setFontSize(64, true).setBackgroundColor(Color.BLACK).setShadow(24, 8, 8, Color.WHITE) -// -// .append("小图").setBackgroundColor(Color.GREEN) -// .appendImage(R.drawable.shape_spannable_block_low, SpanUtils.ALIGN_TOP) -// .append("顶部").setBackgroundColor(Color.GREEN) -// .appendImage(R.drawable.shape_spannable_block_low, SpanUtils.ALIGN_CENTER) -// .append("居中").setBackgroundColor(Color.GREEN) -// .appendImage(R.drawable.shape_spannable_block_low, SpanUtils.ALIGN_BASELINE) -// .append("底部").setBackgroundColor(Color.GREEN) -// .appendImage(R.drawable.shape_spannable_block_low, SpanUtils.ALIGN_BOTTOM) -// .appendLine("对齐").setBackgroundColor(Color.GREEN) -// -// .append("测试空格").appendSpace(30, Color.LTGRAY).appendSpace(50, Color.GREEN).appendSpace(100).appendSpace(30, Color.LTGRAY).appendSpace(50, Color.GREEN) - .create()); - } - - private void initAnimSpan() { - mShaderWidth = 64 * density * 4; - mShader = new LinearGradient(0, 0, - mShaderWidth, 0, - getResources().getIntArray(R.array.rainbow), - null, - Shader.TileMode.REPEAT); - matrix = new Matrix(); - - mBlurMaskFilterSpan = new BlurMaskFilterSpan(25); - - mShadowSpan = new ShadowSpan(8, 8, 8, Color.WHITE); - - mForegroundAlphaColorSpan = new ForegroundAlphaColorSpan(Color.TRANSPARENT); - - mForegroundAlphaColorSpanGroup = new ForegroundAlphaColorSpanGroup(0); - - mPrinterString = "打印动画,后面的文字是为了测试打印效果..."; - - mSpanUtils = new SpanUtils() - .appendLine("彩虹动画").setFontSize(64, true).setShader(mShader) - .appendLine("模糊动画").setFontSize(64, true).setSpans(mBlurMaskFilterSpan) - .appendLine("阴影动画").setFontSize(64, true).setBackgroundColor(Color.BLACK).setSpans(mShadowSpan) - .appendLine("透明动画").setFontSize(64, true).setSpans(mForegroundAlphaColorSpan); - for (int i = 0, len = mPrinterString.length(); i < len; ++i) { - ForegroundAlphaColorSpan span = new ForegroundAlphaColorSpan(Color.TRANSPARENT); - mSpanUtils.append(mPrinterString.substring(i, i + 1)).setSpans(span); - mForegroundAlphaColorSpanGroup.addSpan(span); - } - animSsb = mSpanUtils.create(); - } - - private void startAnim() { - valueAnimator = ValueAnimator.ofFloat(0, 1); - valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { - @Override - public void onAnimationUpdate(ValueAnimator animation) { - // shader - matrix.reset(); - matrix.setTranslate((Float) animation.getAnimatedValue() * mShaderWidth, 0); - mShader.setLocalMatrix(matrix); - - // blur - mBlurMaskFilterSpan.setRadius(25 * (1.00001f - (Float) animation.getAnimatedValue())); - - // shadow - mShadowSpan.setDx(16 * (0.5f - (Float) animation.getAnimatedValue())); - mShadowSpan.setDy(16 * (0.5f - (Float) animation.getAnimatedValue())); - - // alpha - mForegroundAlphaColorSpan.setAlpha((int) (255 * (Float) animation.getAnimatedValue())); - - // printer - mForegroundAlphaColorSpanGroup.setAlpha((Float) animation.getAnimatedValue()); - - // update - tvAboutAnimSpan.setText(animSsb); - } - }); - - valueAnimator.setInterpolator(new LinearInterpolator()); - valueAnimator.setDuration(600 * 3); - valueAnimator.setRepeatCount(ValueAnimator.INFINITE); - valueAnimator.start(); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } - - @Override - protected void onDestroy() { - if (valueAnimator != null && valueAnimator.isRunning()) { - valueAnimator.cancel(); - } - super.onDestroy(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/toast/CustomToast.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/toast/CustomToast.java deleted file mode 100644 index 5a2cf8a6e8..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/toast/CustomToast.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.blankj.androidutilcode.feature.core.toast; - -import android.os.Handler; -import android.os.Looper; -import android.support.annotation.NonNull; -import android.support.annotation.StringRes; -import android.widget.TextView; -import android.widget.Toast; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.UtilsApp; -import com.blankj.utilcode.util.ToastUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2017/08/31
- *     desc  : demo about ToastUtils
- * 
- */ -public class CustomToast { - - private static final Handler HANDLER = new Handler(Looper.getMainLooper()); - - public static void showShort(@NonNull final CharSequence text) { - show(text, Toast.LENGTH_SHORT); - } - - public static void showShort(@StringRes final int resId) { - show(resId, Toast.LENGTH_SHORT); - } - - public static void showShort(@StringRes final int resId, final Object... args) { - show(resId, Toast.LENGTH_SHORT, args); - } - - public static void showShort(final String format, final Object... args) { - show(format, Toast.LENGTH_SHORT, args); - } - - public static void showLong(@NonNull final CharSequence text) { - show(text, Toast.LENGTH_LONG); - } - - public static void showLong(@StringRes final int resId) { - show(resId, Toast.LENGTH_LONG); - } - - public static void showLong(@StringRes final int resId, final Object... args) { - show(resId, Toast.LENGTH_LONG, args); - } - - public static void showLong(final String format, final Object... args) { - show(format, Toast.LENGTH_LONG, args); - } - - private static void show(@StringRes final int resId, final int duration) { - show(UtilsApp.getInstance().getResources().getString(resId), duration); - } - - private static void show(@StringRes final int resId, final int duration, final Object... args) { - show(String.format(UtilsApp.getInstance().getResources().getString(resId), args), duration); - } - - private static void show(final String format, final int duration, final Object... args) { - show(String.format(format, args), duration); - } - - private static void show(final CharSequence text, final int duration) { - HANDLER.post(new Runnable() { - @Override - public void run() { - TextView toastView; - if (duration == Toast.LENGTH_SHORT) { - toastView = (TextView) ToastUtils.showCustomShort(R.layout.toast_custom); - } else { - toastView = (TextView) ToastUtils.showCustomLong(R.layout.toast_custom); - } - toastView.setText(text); - } - }); - } - - public static void cancel() { - ToastUtils.cancel(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/core/toast/ToastActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/core/toast/ToastActivity.java deleted file mode 100644 index cef8ded48f..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/core/toast/ToastActivity.java +++ /dev/null @@ -1,135 +0,0 @@ -package com.blankj.androidutilcode.feature.core.toast; - -import android.content.Context; -import android.content.Intent; -import android.graphics.Color; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v4.content.ContextCompat; -import android.view.Gravity; -import android.view.View; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.SpanUtils; -import com.blankj.utilcode.util.ToastUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/29
- *     desc  : demo about ToastUtils
- * 
- */ -public class ToastActivity extends BaseBackActivity { - - View toastView; - - public static void start(Context context) { - Intent starter = new Intent(context, ToastActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_toast; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_toast)); - - findViewById(R.id.btn_show_short_toast).setOnClickListener(this); - findViewById(R.id.btn_show_long_toast).setOnClickListener(this); - findViewById(R.id.btn_show_green_font).setOnClickListener(this); - findViewById(R.id.btn_show_bg_color).setOnClickListener(this); - findViewById(R.id.btn_show_bg_resource).setOnClickListener(this); - findViewById(R.id.btn_show_span).setOnClickListener(this); - findViewById(R.id.btn_show_custom_view).setOnClickListener(this); - findViewById(R.id.btn_show_middle).setOnClickListener(this); - findViewById(R.id.btn_cancel_toast).setOnClickListener(this); - toastView = findViewById(R.id.btn_cancel_toast); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - resetToast(); - switch (view.getId()) { - case R.id.btn_show_short_toast: - new Thread(new Runnable() { - @Override - public void run() { - ToastUtils.showShort(R.string.toast_short); - } - }).start(); - break; - case R.id.btn_show_long_toast: - new Thread(new Runnable() { - @Override - public void run() { - ToastUtils.showLong(R.string.toast_long); - } - }).start(); - break; - case R.id.btn_show_green_font: - ToastUtils.setMsgColor(Color.GREEN); - ToastUtils.showLong(R.string.toast_green_font); - break; - case R.id.btn_show_bg_color: - ToastUtils.setBgColor(ContextCompat.getColor(this, R.color.colorAccent)); - ToastUtils.showLong(R.string.toast_bg_color); - break; - case R.id.btn_show_bg_resource: - ToastUtils.setBgResource(R.drawable.toast_shape_round_rect); - ToastUtils.showLong(R.string.toast_custom_bg); - break; - case R.id.btn_show_span: - ToastUtils.showLong(new SpanUtils() - .appendImage(R.mipmap.ic_launcher, SpanUtils.ALIGN_CENTER) - .appendSpace(32) - .append(getString(R.string.toast_span)).setFontSize(24, true) - .create() - ); - break; - case R.id.btn_show_custom_view: - new Thread(new Runnable() { - @Override - public void run() { - CustomToast.showLong(R.string.toast_custom_view); - } - }).start(); - break; - case R.id.btn_show_middle: - ToastUtils.setGravity(Gravity.CENTER, 0, 0); - ToastUtils.showLong(R.string.toast_middle); - break; - case R.id.btn_cancel_toast: - ToastUtils.cancel(); - break; - } - } - - @Override - protected void onDestroy() { - resetToast(); - super.onDestroy(); - } - - private void resetToast() { - ToastUtils.setMsgColor(0xFEFFFFFF); - ToastUtils.setBgColor(0xFEFFFFFF); - ToastUtils.setBgResource(-1); - ToastUtils.setGravity(Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL, 0, getResources().getDimensionPixelSize(R.dimen.offset_64)); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/sub/SubUtilActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/sub/SubUtilActivity.java deleted file mode 100644 index ffca01e93f..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/sub/SubUtilActivity.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.blankj.androidutilcode.feature.sub; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.androidutilcode.feature.sub.brightness.BrightnessActivity; -import com.blankj.androidutilcode.feature.sub.flashlight.FlashlightActivity; -import com.blankj.androidutilcode.feature.sub.location.LocationActivity; -import com.blankj.androidutilcode.feature.sub.pinyin.PinyinActivity; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/09/29
- *     desc  : MainActivity
- * 
- */ -public class SubUtilActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, SubUtilActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_util_sub; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.sub_util)); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } - - public void brightnessClick(View view) { - BrightnessActivity.start(this); - } - - public void flashlightClick(View view) { - FlashlightActivity.start(this); - } - - public void locationClick(View view) { - LocationActivity.start(this); - } - - public void pinyinClick(View view) { - PinyinActivity.start(this); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/sub/brightness/BrightnessActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/sub/brightness/BrightnessActivity.java deleted file mode 100644 index f67e31fd3e..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/sub/brightness/BrightnessActivity.java +++ /dev/null @@ -1,155 +0,0 @@ -package com.blankj.androidutilcode.feature.sub.brightness; - -import android.content.Context; -import android.content.Intent; -import android.net.Uri; -import android.os.Build; -import android.os.Bundle; -import android.provider.Settings; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.CompoundButton; -import android.widget.SeekBar; -import android.widget.TextView; -import android.widget.ToggleButton; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseActivity; -import com.blankj.subutil.util.BrightnessUtils; -import com.blankj.subutil.util.Utils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/02/08
- *     desc  : demo about BrightnessUtils
- * 
- */ -public class BrightnessActivity extends BaseActivity { - - TextView tvBrightness; - SeekBar sbBrightness; - TextView tvWindowBrightness; - SeekBar sbWindowBrightness; - ToggleButton tbAutoBrightness; - - private SeekBar.OnSeekBarChangeListener brightnessChangeListener - = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - BrightnessUtils.setBrightness(progress); - updateBrightness(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - private SeekBar.OnSeekBarChangeListener windowBrightnessChangeListener - = new SeekBar.OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - BrightnessUtils.setWindowBrightness(getWindow(), progress); - updateWindowBrightness(); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - - } - }; - - public static void start(Context context) { - Intent starter = new Intent(context, BrightnessActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_brightness; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - tvBrightness = findViewById(R.id.tv_brightness); - sbBrightness = findViewById(R.id.sb_brightness); - tvWindowBrightness = findViewById(R.id.tv_window_brightness); - sbWindowBrightness = findViewById(R.id.sb_window_brightness); - tbAutoBrightness = findViewById(R.id.tb_set_auto_brightness_enable); - - sbBrightness.setProgress(BrightnessUtils.getBrightness()); - sbBrightness.setOnSeekBarChangeListener(brightnessChangeListener); - updateBrightness(); - - sbWindowBrightness.setProgress(BrightnessUtils.getWindowBrightness(getWindow())); - sbWindowBrightness.setOnSeekBarChangeListener(windowBrightnessChangeListener); - updateWindowBrightness(); - - tbAutoBrightness.setChecked(BrightnessUtils.isAutoBrightnessEnabled()); - tbAutoBrightness.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M - && !Settings.System.canWrite(Utils.getApp())) { - Intent intent = new Intent(android.provider.Settings.ACTION_MANAGE_WRITE_SETTINGS); - intent.setData(Uri.parse("package:" + Utils.getApp().getPackageName())); - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - Utils.getApp().startActivity(intent); - } - } - }); - - tbAutoBrightness.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - boolean isSuccess = BrightnessUtils.setAutoBrightnessEnabled(isChecked); - if (!isSuccess) { - tbAutoBrightness.toggle(); - } - } - }); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } - - private void updateBrightness() { - tvBrightness.setText(new SpanUtils() - .append(String.valueOf(BrightnessUtils.getBrightness())) - .create() - ); - } - - private void updateWindowBrightness() { - tvWindowBrightness.setText(new SpanUtils() - .append(String.valueOf(BrightnessUtils.getWindowBrightness(getWindow()))) - .create() - ); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/sub/flashlight/FlashlightActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/sub/flashlight/FlashlightActivity.java deleted file mode 100644 index 0e30a98910..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/sub/flashlight/FlashlightActivity.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.blankj.androidutilcode.feature.sub.flashlight; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.androidutilcode.helper.PermissionHelper; -import com.blankj.subutil.util.FlashlightUtils; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/04/27
- *     desc  : demo about FlashlightUtils
- * 
- */ -public class FlashlightActivity extends BaseBackActivity { - - TextView tvAboutFlashlight; - - public static void start(Context context) { - Intent starter = new Intent(context, FlashlightActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_flashlight; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - tvAboutFlashlight = findViewById(R.id.tv_about_flashlight); - findViewById(R.id.btn_set_flashlight_on).setOnClickListener(this); - findViewById(R.id.btn_set_flashlight_off).setOnClickListener(this); - } - - @Override - public void doBusiness() { - if (FlashlightUtils.isFlashlightEnable()) { - FlashlightUtils.getInstance().register(); - } - updateAboutFlashlight(); - } - - @Override - public void onWidgetClick(View view) { - if (!FlashlightUtils.isFlashlightEnable()) return; - switch (view.getId()) { - case R.id.btn_set_flashlight_on: - PermissionHelper.requestCamera(new PermissionHelper.OnPermissionGrantedListener() { - @Override - public void onPermissionGranted() { - FlashlightUtils.getInstance().setFlashlightOn(); - } - }); - break; - case R.id.btn_set_flashlight_off: - PermissionHelper.requestCamera(new PermissionHelper.OnPermissionGrantedListener() { - @Override - public void onPermissionGranted() { - FlashlightUtils.getInstance().setFlashlightOff(); - } - }); - break; - } - updateAboutFlashlight(); - } - - @Override - protected void onDestroy() { - FlashlightUtils.getInstance().unregister(); - super.onDestroy(); - } - - private void updateAboutFlashlight() { - PermissionHelper.requestCamera(new PermissionHelper.OnPermissionGrantedListener() { - @Override - public void onPermissionGranted() { - tvAboutFlashlight.setText(new SpanUtils() - .appendLine("isFlashlightEnable: " + FlashlightUtils.isFlashlightEnable()) - .appendLine("isFlashlightOn: " + FlashlightUtils.getInstance().isFlashlightOn()) - .create()); - } - }); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/sub/location/LocationActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/sub/location/LocationActivity.java deleted file mode 100755 index 6d4636addb..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/sub/location/LocationActivity.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.blankj.androidutilcode.feature.sub.location; - -import android.content.ComponentName; -import android.content.Context; -import android.content.Intent; -import android.content.ServiceConnection; -import android.os.Bundle; -import android.os.IBinder; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.utilcode.util.SpanUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/10/13
- *     desc  : demo about LocationUtils
- * 
- */ -public class LocationActivity extends BaseBackActivity { - - TextView tvAboutLocation; - LocationService mLocationService; - - public static void start(Context context) { - Intent starter = new Intent(context, LocationActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_location; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_location)); - - tvAboutLocation = findViewById(R.id.tv_about_location); - tvAboutLocation.setText(new SpanUtils() - .appendLine("lastLatitude: unknown") - .appendLine("lastLongitude: unknown") - .appendLine("latitude: unknown") - .appendLine("longitude: unknown") - .appendLine("getCountryName: unknown") - .appendLine("getLocality: unknown") - .appendLine("getStreet: unknown") - .create() - ); - } - - @Override - public void doBusiness() { - bindService(new Intent(this, LocationService.class), conn, Context.BIND_AUTO_CREATE); - } - - @Override - public void onWidgetClick(View view) { - - } - - @Override - protected void onDestroy() { - unbindService(conn); - super.onDestroy(); - } - - ServiceConnection conn = new ServiceConnection() { - @Override - public void onServiceDisconnected(ComponentName name) { - - } - - @Override - public void onServiceConnected(ComponentName name, IBinder service) { - mLocationService = ((LocationService.LocationBinder) service).getService(); - mLocationService.setOnGetLocationListener(new LocationService.OnGetLocationListener() { - @Override - public void getLocation(final String lastLatitude, final String lastLongitude, final String latitude, final String longitude, final String country, final String locality, final String street) { - runOnUiThread(new Runnable() { - @Override - public void run() { - tvAboutLocation.setText(new SpanUtils() - .appendLine("lastLatitude: " + lastLatitude) - .appendLine("lastLongitude: " + lastLongitude) - .appendLine("latitude: " + latitude) - .appendLine("longitude: " + longitude) - .appendLine("getCountryName: " + country) - .appendLine("getLocality: " + locality) - .appendLine("getStreet: " + street) - .create() - ); - } - }); - } - }); - } - }; -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/sub/location/LocationService.java b/app/src/main/java/com/blankj/androidutilcode/feature/sub/location/LocationService.java deleted file mode 100755 index fd4549f72e..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/sub/location/LocationService.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.blankj.androidutilcode.feature.sub.location; - -import android.app.Service; -import android.content.Intent; -import android.location.Location; -import android.os.Binder; -import android.os.Bundle; -import android.os.IBinder; -import android.os.Looper; -import android.support.annotation.Nullable; - -import com.blankj.androidutilcode.helper.PermissionHelper; -import com.blankj.subutil.util.LocationUtils; -import com.blankj.utilcode.util.ToastUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2016/11/21
- *     desc  : demo about LocationUtils
- * 
- */ -public class LocationService extends Service { - - private boolean isSuccess; - private String lastLatitude = "loading..."; - private String lastLongitude = "loading..."; - private String latitude = "loading..."; - private String longitude = "loading..."; - private String country = "loading..."; - private String locality = "loading..."; - private String street = "loading..."; - private OnGetLocationListener mOnGetLocationListener; - - public void setOnGetLocationListener(OnGetLocationListener onGetLocationListener) { - mOnGetLocationListener = onGetLocationListener; - } - - private LocationUtils.OnLocationChangeListener mOnLocationChangeListener = new LocationUtils.OnLocationChangeListener() { - @Override - public void getLastKnownLocation(Location location) { - lastLatitude = String.valueOf(location.getLatitude()); - lastLongitude = String.valueOf(location.getLongitude()); - if (mOnGetLocationListener != null) { - mOnGetLocationListener.getLocation(lastLatitude, lastLongitude, latitude, longitude, country, locality, street); - } - } - - @Override - public void onLocationChanged(final Location location) { - latitude = String.valueOf(location.getLatitude()); - longitude = String.valueOf(location.getLongitude()); - if (mOnGetLocationListener != null) { - mOnGetLocationListener.getLocation(lastLatitude, lastLongitude, latitude, longitude, country, locality, street); - } - country = LocationUtils.getCountryName(Double.parseDouble(latitude), Double.parseDouble(longitude)); - locality = LocationUtils.getLocality(Double.parseDouble(latitude), Double.parseDouble(longitude)); - street = LocationUtils.getStreet(Double.parseDouble(latitude), Double.parseDouble(longitude)); - if (mOnGetLocationListener != null) { - mOnGetLocationListener.getLocation(lastLatitude, lastLongitude, latitude, longitude, country, locality, street); - } - } - - @Override - public void onStatusChanged(String provider, int status, Bundle extras) { - - } - }; - - @Override - public void onCreate() { - super.onCreate(); - PermissionHelper.requestLocation(new PermissionHelper.OnPermissionGrantedListener() { - @Override - public void onPermissionGranted() { - new Thread(new Runnable() { - @Override - public void run() { - Looper.prepare(); - isSuccess = LocationUtils.register(0, 0, mOnLocationChangeListener); - if (isSuccess) ToastUtils.showShort("init success"); - Looper.loop(); - } - }).start(); - } - }); - } - - @Nullable - @Override - public IBinder onBind(Intent intent) { - return new LocationBinder(); - } - - public class LocationBinder extends Binder { - public LocationService getService() { - return LocationService.this; - } - } - - @Override - public void onDestroy() { - LocationUtils.unregister(); - // 一定要制空,否则内存泄漏 - mOnGetLocationListener = null; - super.onDestroy(); - } - - /** - * 获取位置监听器 - */ - public interface OnGetLocationListener { - void getLocation( - String lastLatitude, String lastLongitude, - String latitude, String longitude, - String country, String locality, String street - ); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/feature/sub/pinyin/PinyinActivity.java b/app/src/main/java/com/blankj/androidutilcode/feature/sub/pinyin/PinyinActivity.java deleted file mode 100644 index d600d20a9c..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/feature/sub/pinyin/PinyinActivity.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.blankj.androidutilcode.feature.sub.pinyin; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.TextView; - -import com.blankj.androidutilcode.R; -import com.blankj.androidutilcode.base.BaseBackActivity; -import com.blankj.subutil.util.PinyinUtils; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 17/02/01
- *     desc  : demo about PinyinUtils
- * 
- */ -public class PinyinActivity extends BaseBackActivity { - - public static void start(Context context) { - Intent starter = new Intent(context, PinyinActivity.class); - context.startActivity(starter); - } - - @Override - public void initData(@Nullable Bundle bundle) { - - } - - @Override - public int bindLayout() { - return R.layout.activity_pinyin; - } - - @Override - public void initView(Bundle savedInstanceState, View contentView) { - getToolBar().setTitle(getString(R.string.demo_pinyin)); - - TextView tvAboutPinyin = findViewById(R.id.tv_about_pinyin); - - String surnames = "乐乘乜仇会便区单参句召员宓弗折曾朴查洗盖祭种秘繁缪能蕃覃解谌适都阿难黑"; - int size = surnames.length(); - StringBuilder sb = new StringBuilder("汉字转拼音: " + PinyinUtils.ccs2Pinyin("汉字转拼音", " ") - + "\n获取首字母: " + PinyinUtils.getPinyinFirstLetters("获取首字母", " ") - + "\n\n测试姓氏" - + "\n澹台: " + PinyinUtils.getSurnamePinyin("澹台") - + "\n尉迟: " + PinyinUtils.getSurnamePinyin("尉迟") - + "\n万俟: " + PinyinUtils.getSurnamePinyin("万俟") - + "\n单于: " + PinyinUtils.getSurnamePinyin("单于")); - for (int i = 0; i < size; ++i) { - String surname = String.valueOf(surnames.charAt(i)); - sb.append(String.format( - "\n%s 正确: %-6s 错误: %-6s", - surname, - PinyinUtils.getSurnamePinyin(surname), - PinyinUtils.ccs2Pinyin(surname) - )); - } - tvAboutPinyin.setText(sb.toString()); - } - - @Override - public void doBusiness() { - - } - - @Override - public void onWidgetClick(View view) { - - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/helper/DialogHelper.java b/app/src/main/java/com/blankj/androidutilcode/helper/DialogHelper.java deleted file mode 100644 index 1118ac8f99..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/helper/DialogHelper.java +++ /dev/null @@ -1,129 +0,0 @@ -package com.blankj.androidutilcode.helper; - -import android.app.Activity; -import android.content.DialogInterface; -import android.support.v7.app.AlertDialog; -import android.view.LayoutInflater; -import android.view.View; -import android.widget.EditText; - -import com.blankj.androidutilcode.R; -import com.blankj.utilcode.util.ActivityUtils; -import com.blankj.utilcode.util.KeyboardUtils; -import com.blankj.utilcode.util.PermissionUtils; -import com.blankj.utilcode.util.PermissionUtils.OnRationaleListener.ShouldRequest; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/01/10
- *     desc  : helper about dialog
- * 
- */ -public class DialogHelper { - - public static void showRationaleDialog(final ShouldRequest shouldRequest) { - Activity topActivity = ActivityUtils.getTopActivity(); - if (topActivity == null) return; - new AlertDialog.Builder(topActivity) - .setTitle(android.R.string.dialog_alert_title) - .setMessage(R.string.permission_rationale_message) - .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - shouldRequest.again(true); - } - }) - .setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - shouldRequest.again(false); - } - }) - .setCancelable(false) - .create() - .show(); - - } - - public static void showOpenAppSettingDialog() { - Activity topActivity = ActivityUtils.getTopActivity(); - if (topActivity == null) return; - new AlertDialog.Builder(topActivity) - .setTitle(android.R.string.dialog_alert_title) - .setMessage(R.string.permission_denied_forever_message) - .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - PermissionUtils.launchAppDetailsSettings(); - } - }) - .setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - - } - }) - .setCancelable(false) - .create() - .show(); - } - - public static void showAdaptScreenDialog() { - Activity topActivity = ActivityUtils.getTopActivity(); - if (topActivity == null) return; - new AlertDialog.Builder(topActivity) - .setTitle(android.R.string.dialog_alert_title) - .setMessage("Message!") - .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - - } - }) - .setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - - } - }) - .setCancelable(false) - .create() - .show(); - } - - public static void showKeyboardDialog() { - Activity topActivity = ActivityUtils.getTopActivity(); - if (topActivity == null) return; - final View dialogView = LayoutInflater.from(topActivity).inflate(R.layout.dialog_keyboard, null); - final EditText etInput = dialogView.findViewById(R.id.et_input); - final AlertDialog dialog = new AlertDialog.Builder(topActivity).setView(dialogView).create(); - dialog.setCanceledOnTouchOutside(false); - View.OnClickListener listener = new View.OnClickListener() { - @Override - public void onClick(View v) { - switch (v.getId()) { - case R.id.btn_hide_soft_input: - KeyboardUtils.hideSoftInput(etInput); - break; - case R.id.btn_show_soft_input: - KeyboardUtils.showSoftInput(etInput); - break; - case R.id.btn_toggle_soft_input: - KeyboardUtils.toggleSoftInput(); - break; - case R.id.btn_close_dialog: - KeyboardUtils.hideSoftInput(etInput); - dialog.dismiss(); - break; - } - } - }; - dialogView.findViewById(R.id.btn_hide_soft_input).setOnClickListener(listener); - dialogView.findViewById(R.id.btn_show_soft_input).setOnClickListener(listener); - dialogView.findViewById(R.id.btn_toggle_soft_input).setOnClickListener(listener); - dialogView.findViewById(R.id.btn_close_dialog).setOnClickListener(listener); - dialog.show(); - } -} diff --git a/app/src/main/java/com/blankj/androidutilcode/helper/PermissionHelper.java b/app/src/main/java/com/blankj/androidutilcode/helper/PermissionHelper.java deleted file mode 100644 index 1012a4392d..0000000000 --- a/app/src/main/java/com/blankj/androidutilcode/helper/PermissionHelper.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.blankj.androidutilcode.helper; - -import com.blankj.utilcode.constant.PermissionConstants; -import com.blankj.utilcode.util.LogUtils; -import com.blankj.utilcode.util.PermissionUtils; - -import java.util.List; - -/** - *
- *     author: Blankj
- *     blog  : http://blankj.com
- *     time  : 2018/01/06
- *     desc  : helper about permission
- * 
- */ -public class PermissionHelper { - - public static void requestCamera(final OnPermissionGrantedListener listener) { - request(listener, PermissionConstants.CAMERA); - } - - public static void requestStorage(final OnPermissionGrantedListener listener) { - request(listener, PermissionConstants.STORAGE); - } - - public static void requestPhone(final OnPermissionGrantedListener listener) { - request(listener, PermissionConstants.PHONE); - } - - public static void requestPhone(final OnPermissionGrantedListener grantedListener, - final OnPermissionDeniedListener deniedListener) { - request(grantedListener, deniedListener, PermissionConstants.PHONE); - } - - public static void requestSms(final OnPermissionGrantedListener listener) { - request(listener, PermissionConstants.SMS); - } - - public static void requestLocation(final OnPermissionGrantedListener listener) { - request(listener, PermissionConstants.LOCATION); - } - - private static void request(final OnPermissionGrantedListener grantedListener, - final @PermissionConstants.Permission String... permissions) { - request(grantedListener, null, permissions); - } - - private static void request(final OnPermissionGrantedListener grantedListener, - final OnPermissionDeniedListener deniedListener, - final @PermissionConstants.Permission String... permissions) { - PermissionUtils.permission(permissions) - .rationale(new PermissionUtils.OnRationaleListener() { - @Override - public void rationale(ShouldRequest shouldRequest) { - DialogHelper.showRationaleDialog(shouldRequest); - } - }) - .callback(new PermissionUtils.FullCallback() { - @Override - public void onGranted(List permissionsGranted) { - if (grantedListener != null) { - grantedListener.onPermissionGranted(); - } - LogUtils.d(permissionsGranted); - } - - @Override - public void onDenied(List permissionsDeniedForever, List permissionsDenied) { - if (!permissionsDeniedForever.isEmpty()) { - DialogHelper.showOpenAppSettingDialog(); - } - if (deniedListener != null) { - deniedListener.onPermissionDenied(); - } - LogUtils.d(permissionsDeniedForever, permissionsDenied); - } - }) - .request(); - } - - public interface OnPermissionGrantedListener { - void onPermissionGranted(); - } - - public interface OnPermissionDeniedListener { - void onPermissionDenied(); - } -} diff --git a/app/src/main/res-core/drawable/bar_status_alpha_bg.png b/app/src/main/res-core/drawable/bar_status_alpha_bg.png deleted file mode 100644 index ab8065f49a..0000000000 Binary files a/app/src/main/res-core/drawable/bar_status_alpha_bg.png and /dev/null differ diff --git a/app/src/main/res-core/drawable/bar_status_custom.xml b/app/src/main/res-core/drawable/bar_status_custom.xml deleted file mode 100644 index 16e56b7144..0000000000 --- a/app/src/main/res-core/drawable/bar_status_custom.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/src/main/res-core/drawable/bar_status_nav_custom.xml b/app/src/main/res-core/drawable/bar_status_nav_custom.xml deleted file mode 100644 index be01a22d9b..0000000000 --- a/app/src/main/res-core/drawable/bar_status_nav_custom.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - \ No newline at end of file diff --git a/app/src/main/res-core/drawable/image_lena.png b/app/src/main/res-core/drawable/image_lena.png deleted file mode 100644 index fa49ea640b..0000000000 Binary files a/app/src/main/res-core/drawable/image_lena.png and /dev/null differ diff --git a/app/src/main/res-core/layout-land/activity_screen_adapt.xml b/app/src/main/res-core/layout-land/activity_screen_adapt.xml deleted file mode 100644 index 8cdb4055fd..0000000000 --- a/app/src/main/res-core/layout-land/activity_screen_adapt.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res-core/layout-port/activity_screen_adapt.xml b/app/src/main/res-core/layout-port/activity_screen_adapt.xml deleted file mode 100644 index 95992c8c97..0000000000 --- a/app/src/main/res-core/layout-port/activity_screen_adapt.xml +++ /dev/null @@ -1,70 +0,0 @@ - - - - - - - -