From d3edfc827a3cec7d0cdf7e84e34967ae6d898284 Mon Sep 17 00:00:00 2001 From: dirk41 <1378902882@qq.com> Date: Wed, 26 May 2021 10:52:34 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=80=E6=AC=A1=E4=B8=8A=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 37 +- CHANGELOG.md | 4 + README.OPENSOURCE | 10 + README.md | 175 +++-- _config.yml | 1 - app/build.gradle | 35 - app/proguard-rules.pro | 17 - app/src/main/AndroidManifest.xml | 26 - .../fabrevealmenu/BaseFragment.java | 32 - .../fabrevealmenu/DemoCodeFragment.java | 155 ----- .../fabrevealmenu/DemoXmlFragment.java | 98 --- .../fabrevealmenu/MainActivity.java | 58 -- .../fabrevealmenu/ScrollingActivity.java | 88 --- app/src/main/res/drawable/ic_attachment.xml | 9 - app/src/main/res/drawable/ic_code.xml | 9 - app/src/main/res/drawable/ic_design.xml | 9 - app/src/main/res/drawable/ic_emoticon.xml | 9 - app/src/main/res/drawable/ic_hand.xml | 9 - app/src/main/res/drawable/ic_image.xml | 9 - app/src/main/res/drawable/ic_menu.xml | 10 - app/src/main/res/drawable/ic_place.xml | 9 - app/src/main/res/drawable/side_nav_bar.xml | 9 - app/src/main/res/layout/activity_main.xml | 23 - .../main/res/layout/activity_scrolling.xml | 55 -- app/src/main/res/layout/app_bar_main.xml | 35 - app/src/main/res/layout/content_scrolling.xml | 17 - app/src/main/res/layout/fragment_code.xml | 143 ---- app/src/main/res/layout/fragment_xml.xml | 69 -- .../main/res/layout/layout_custom_menu.xml | 97 --- app/src/main/res/layout/nav_header_main.xml | 34 - app/src/main/res/menu/bottom_menu.xml | 18 - app/src/main/res/menu/menu_fab.xml | 25 - app/src/main/res/mipmap-hdpi/ic_launcher.png | Bin 3418 -> 0 bytes app/src/main/res/mipmap-mdpi/ic_launcher.png | Bin 2206 -> 0 bytes app/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 4842 -> 0 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 7718 -> 0 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 10486 -> 0 bytes app/src/main/res/values/colors.xml | 6 - app/src/main/res/values/dimens.xml | 11 - app/src/main/res/values/strings.xml | 117 ---- app/src/main/res/values/styles.xml | 20 - build.gradle | 36 +- entry/.gitignore | 1 + entry/build.gradle | 39 ++ entry/proguard-rules.pro | 1 + entry/src/main/config.json | 74 +++ .../fabrevealmenu/BaseFraction.java | 162 +++++ .../hlabexamples/fabrevealmenu/Constants.java | 77 +++ .../fabrevealmenu/DemoCodeFraction.java | 139 ++++ .../fabrevealmenu/DemoXmlFraction.java | 38 ++ .../fabrevealmenu/MainAbility.java | 123 ++++ .../fabrevealmenu/MyApplication.java | 15 + .../fabrevealmenu/ScrollingAbility.java | 130 ++++ .../main/resources/base/element/color.json | 48 ++ .../main/resources/base/element/float.json | 172 +++++ .../main/resources/base/element/string.json | 73 +++ .../base/graphic/background_ability_main.xml | 6 + .../graphic/background_ability_main_sep.xml | 6 + .../graphic/background_ability_scrolling.xml | 8 + .../base/graphic/background_menu_btn.xml | 8 + .../base/graphic/background_toast_element.xml | 8 + .../main/resources/base/graphic/ic_arrow.xml | 9 + .../resources/base/graphic/ic_attachment.xml | 9 + .../main/resources/base/graphic/ic_code.xml | 9 + .../base/graphic/ic_code_selected.xml | 9 + .../main/resources/base/graphic/ic_design.xml | 9 + .../base/graphic/ic_design_selected.xml | 9 + .../resources/base/graphic/ic_emoticon.xml | 9 + .../main/resources/base/graphic/ic_hand.xml | 9 + .../base/graphic/ic_hand_selected.xml | 9 + .../main/resources/base/graphic/ic_image.xml | 9 + .../main/resources/base/graphic/ic_menu.xml | 10 + .../main/resources/base/graphic/ic_place.xml | 9 + .../resources/base/layout/ability_main.xml | 233 +++++++ .../base/layout/ability_scrolling.xml | 193 ++++++ .../resources/base/layout/app_bar_main.xml | 23 + .../resources/base/layout/fraction_code.xml | 273 ++++++++ .../resources/base/layout/fraction_xml.xml | 146 +++++ .../base/layout/layout_custom_menu.xml | 97 +++ .../resources/base/layout/layout_toast.xml | 21 + .../main/resources/base/media/back_left.png | Bin 0 -> 2062 bytes .../main/resources/base/media/blue_yuan.png | Bin 0 -> 5644 bytes .../resources/base/media/ic_dialog_email.png | Bin 0 -> 1621 bytes entry/src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../main/resources/rawfile/huakangshaonv.ttf | Bin 0 -> 3917384 bytes .../src/main/resources/rawfile}/quicksand.otf | Bin entry/src/ohosTest/config.json | 41 ++ .../fabrevealmenu/ExampleOhosTest.java | 14 + .../fabrevealmenu/ExampleTest.java | 9 + fabrevealmenu/.gitignore | 1 + fabrevealmenu/build.gradle | 47 +- fabrevealmenu/proguard-rules.pro | 18 +- fabrevealmenu/src/main/AndroidManifest.xml | 3 - fabrevealmenu/src/main/config.json | 28 + .../fabrevealmenu/helper/AnimationHelper.java | 165 +++-- .../hlab/fabrevealmenu/helper/Direction.java | 22 +- .../helper/OnFABMenuSelectedListener.java | 15 +- .../hlab/fabrevealmenu/helper/ViewHelper.java | 226 ++++--- .../hlab/fabrevealmenu/model/FABMenuItem.java | 73 ++- .../hlab/fabrevealmenu/utils/ColorUtils.java | 194 ++++++ .../fabrevealmenu/utils/DensityUtils.java | 122 ++++ .../fabrevealmenu/utils/TypedAttrUtils.java | 241 +++++++ .../view/DynamicGridLayoutManager.java | 34 +- ...BMenuAdapter.java => FABMenuProvider.java} | 193 +++--- .../fabrevealmenu/view/FABRevealMenu.java | 611 ++++++++++-------- .../res/drawable-v21/drawable_bg_selected.xml | 9 - .../drawable_bg_selected_round.xml | 9 - .../res/drawable/drawable_bg_selected.xml | 6 - .../drawable/drawable_bg_selected_round.xml | 6 - .../main/res/drawable/drawable_shape_oval.xml | 10 - .../res/drawable/drawable_shape_rectangle.xml | 10 - .../drawable_shape_rectangle_light.xml | 10 - .../res/layout/row_horizontal_menu_item.xml | 31 - .../layout/row_horizontal_menu_item_small.xml | 31 - .../res/layout/row_vertical_menu_item.xml | 36 -- .../layout/row_vertical_menu_item_small.xml | 34 - fabrevealmenu/src/main/res/values/attrs.xml | 31 - fabrevealmenu/src/main/res/values/colors.xml | 7 - fabrevealmenu/src/main/res/values/dimens.xml | 21 - .../src/main/res/values/integers.xml | 4 - .../main/resources/base/element/color.json | 24 + .../main/resources/base/element/dimen.json | 80 +++ .../main/resources/base/element/string.json | 8 + .../base/graphic/drawable_shape_oval.xml | 10 + .../base/graphic/drawable_shape_rectangle.xml | 10 + .../drawable_shape_rectangle_light.xml | 10 + .../base/layout/row_horizontal_menu_item.xml | 30 + .../layout/row_horizontal_menu_item_small.xml | 30 + .../base/layout/row_vertical_menu_item.xml | 37 ++ .../layout/row_vertical_menu_item_small.xml | 35 + .../com/hlab/fabrevealmenu/ExampleTest.java | 9 + gif/fabmenu.gif | Bin 0 -> 1926776 bytes gradle.properties | 12 +- gradle/wrapper/gradle-wrapper.jar | Bin 53636 -> 58694 bytes gradle/wrapper/gradle-wrapper.properties | 3 +- gradlew | 109 ++-- gradlew.bat | 33 +- sample/Screenshot_1511248877.png | Bin 142460 -> 0 bytes sample/Screenshot_1511248898.png | Bin 91401 -> 0 bytes sample/custom.gif | Bin 237315 -> 0 bytes sample/custom.mov | Bin 170282 -> 0 bytes settings.gradle | 2 +- 142 files changed, 4198 insertions(+), 2303 deletions(-) create mode 100644 CHANGELOG.md create mode 100644 README.OPENSOURCE delete mode 100644 _config.yml delete mode 100755 app/build.gradle delete mode 100755 app/proguard-rules.pro delete mode 100755 app/src/main/AndroidManifest.xml delete mode 100755 app/src/main/java/com/hlabexamples/fabrevealmenu/BaseFragment.java delete mode 100755 app/src/main/java/com/hlabexamples/fabrevealmenu/DemoCodeFragment.java delete mode 100755 app/src/main/java/com/hlabexamples/fabrevealmenu/DemoXmlFragment.java delete mode 100644 app/src/main/java/com/hlabexamples/fabrevealmenu/MainActivity.java delete mode 100755 app/src/main/java/com/hlabexamples/fabrevealmenu/ScrollingActivity.java delete mode 100644 app/src/main/res/drawable/ic_attachment.xml delete mode 100644 app/src/main/res/drawable/ic_code.xml delete mode 100644 app/src/main/res/drawable/ic_design.xml delete mode 100644 app/src/main/res/drawable/ic_emoticon.xml delete mode 100644 app/src/main/res/drawable/ic_hand.xml delete mode 100644 app/src/main/res/drawable/ic_image.xml delete mode 100644 app/src/main/res/drawable/ic_menu.xml delete mode 100644 app/src/main/res/drawable/ic_place.xml delete mode 100755 app/src/main/res/drawable/side_nav_bar.xml delete mode 100644 app/src/main/res/layout/activity_main.xml delete mode 100755 app/src/main/res/layout/activity_scrolling.xml delete mode 100755 app/src/main/res/layout/app_bar_main.xml delete mode 100755 app/src/main/res/layout/content_scrolling.xml delete mode 100755 app/src/main/res/layout/fragment_code.xml delete mode 100755 app/src/main/res/layout/fragment_xml.xml delete mode 100755 app/src/main/res/layout/layout_custom_menu.xml delete mode 100755 app/src/main/res/layout/nav_header_main.xml delete mode 100755 app/src/main/res/menu/bottom_menu.xml delete mode 100755 app/src/main/res/menu/menu_fab.xml delete mode 100755 app/src/main/res/mipmap-hdpi/ic_launcher.png delete mode 100755 app/src/main/res/mipmap-mdpi/ic_launcher.png delete mode 100755 app/src/main/res/mipmap-xhdpi/ic_launcher.png delete mode 100755 app/src/main/res/mipmap-xxhdpi/ic_launcher.png delete mode 100755 app/src/main/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100755 app/src/main/res/values/colors.xml delete mode 100755 app/src/main/res/values/dimens.xml delete mode 100755 app/src/main/res/values/strings.xml delete mode 100755 app/src/main/res/values/styles.xml create mode 100644 entry/.gitignore create mode 100644 entry/build.gradle create mode 100644 entry/proguard-rules.pro create mode 100644 entry/src/main/config.json create mode 100644 entry/src/main/java/com/hlabexamples/fabrevealmenu/BaseFraction.java create mode 100644 entry/src/main/java/com/hlabexamples/fabrevealmenu/Constants.java create mode 100644 entry/src/main/java/com/hlabexamples/fabrevealmenu/DemoCodeFraction.java create mode 100644 entry/src/main/java/com/hlabexamples/fabrevealmenu/DemoXmlFraction.java create mode 100644 entry/src/main/java/com/hlabexamples/fabrevealmenu/MainAbility.java create mode 100644 entry/src/main/java/com/hlabexamples/fabrevealmenu/MyApplication.java create mode 100644 entry/src/main/java/com/hlabexamples/fabrevealmenu/ScrollingAbility.java create mode 100644 entry/src/main/resources/base/element/color.json create mode 100644 entry/src/main/resources/base/element/float.json create mode 100644 entry/src/main/resources/base/element/string.json create mode 100644 entry/src/main/resources/base/graphic/background_ability_main.xml create mode 100644 entry/src/main/resources/base/graphic/background_ability_main_sep.xml create mode 100644 entry/src/main/resources/base/graphic/background_ability_scrolling.xml create mode 100644 entry/src/main/resources/base/graphic/background_menu_btn.xml create mode 100644 entry/src/main/resources/base/graphic/background_toast_element.xml create mode 100644 entry/src/main/resources/base/graphic/ic_arrow.xml create mode 100644 entry/src/main/resources/base/graphic/ic_attachment.xml create mode 100644 entry/src/main/resources/base/graphic/ic_code.xml create mode 100644 entry/src/main/resources/base/graphic/ic_code_selected.xml create mode 100644 entry/src/main/resources/base/graphic/ic_design.xml create mode 100644 entry/src/main/resources/base/graphic/ic_design_selected.xml create mode 100644 entry/src/main/resources/base/graphic/ic_emoticon.xml create mode 100644 entry/src/main/resources/base/graphic/ic_hand.xml create mode 100644 entry/src/main/resources/base/graphic/ic_hand_selected.xml create mode 100644 entry/src/main/resources/base/graphic/ic_image.xml create mode 100644 entry/src/main/resources/base/graphic/ic_menu.xml create mode 100644 entry/src/main/resources/base/graphic/ic_place.xml create mode 100644 entry/src/main/resources/base/layout/ability_main.xml create mode 100644 entry/src/main/resources/base/layout/ability_scrolling.xml create mode 100644 entry/src/main/resources/base/layout/app_bar_main.xml create mode 100644 entry/src/main/resources/base/layout/fraction_code.xml create mode 100644 entry/src/main/resources/base/layout/fraction_xml.xml create mode 100644 entry/src/main/resources/base/layout/layout_custom_menu.xml create mode 100644 entry/src/main/resources/base/layout/layout_toast.xml create mode 100644 entry/src/main/resources/base/media/back_left.png create mode 100644 entry/src/main/resources/base/media/blue_yuan.png create mode 100644 entry/src/main/resources/base/media/ic_dialog_email.png create mode 100644 entry/src/main/resources/base/media/icon.png create mode 100644 entry/src/main/resources/rawfile/huakangshaonv.ttf rename {app/src/main/res/font => entry/src/main/resources/rawfile}/quicksand.otf (100%) mode change 100755 => 100644 create mode 100644 entry/src/ohosTest/config.json create mode 100644 entry/src/ohosTest/java/com/hlabexamples/fabrevealmenu/ExampleOhosTest.java create mode 100644 entry/src/test/java/com/hlabexamples/fabrevealmenu/ExampleTest.java create mode 100644 fabrevealmenu/.gitignore delete mode 100755 fabrevealmenu/src/main/AndroidManifest.xml create mode 100644 fabrevealmenu/src/main/config.json create mode 100644 fabrevealmenu/src/main/java/com/hlab/fabrevealmenu/utils/ColorUtils.java create mode 100644 fabrevealmenu/src/main/java/com/hlab/fabrevealmenu/utils/DensityUtils.java create mode 100644 fabrevealmenu/src/main/java/com/hlab/fabrevealmenu/utils/TypedAttrUtils.java rename fabrevealmenu/src/main/java/com/hlab/fabrevealmenu/view/{FABMenuAdapter.java => FABMenuProvider.java} (31%) mode change 100755 => 100644 delete mode 100755 fabrevealmenu/src/main/res/drawable-v21/drawable_bg_selected.xml delete mode 100755 fabrevealmenu/src/main/res/drawable-v21/drawable_bg_selected_round.xml delete mode 100755 fabrevealmenu/src/main/res/drawable/drawable_bg_selected.xml delete mode 100755 fabrevealmenu/src/main/res/drawable/drawable_bg_selected_round.xml delete mode 100755 fabrevealmenu/src/main/res/drawable/drawable_shape_oval.xml delete mode 100755 fabrevealmenu/src/main/res/drawable/drawable_shape_rectangle.xml delete mode 100755 fabrevealmenu/src/main/res/drawable/drawable_shape_rectangle_light.xml delete mode 100755 fabrevealmenu/src/main/res/layout/row_horizontal_menu_item.xml delete mode 100644 fabrevealmenu/src/main/res/layout/row_horizontal_menu_item_small.xml delete mode 100755 fabrevealmenu/src/main/res/layout/row_vertical_menu_item.xml delete mode 100644 fabrevealmenu/src/main/res/layout/row_vertical_menu_item_small.xml delete mode 100755 fabrevealmenu/src/main/res/values/attrs.xml delete mode 100755 fabrevealmenu/src/main/res/values/colors.xml delete mode 100755 fabrevealmenu/src/main/res/values/dimens.xml delete mode 100644 fabrevealmenu/src/main/res/values/integers.xml create mode 100644 fabrevealmenu/src/main/resources/base/element/color.json create mode 100644 fabrevealmenu/src/main/resources/base/element/dimen.json create mode 100644 fabrevealmenu/src/main/resources/base/element/string.json create mode 100644 fabrevealmenu/src/main/resources/base/graphic/drawable_shape_oval.xml create mode 100644 fabrevealmenu/src/main/resources/base/graphic/drawable_shape_rectangle.xml create mode 100644 fabrevealmenu/src/main/resources/base/graphic/drawable_shape_rectangle_light.xml create mode 100644 fabrevealmenu/src/main/resources/base/layout/row_horizontal_menu_item.xml create mode 100644 fabrevealmenu/src/main/resources/base/layout/row_horizontal_menu_item_small.xml create mode 100644 fabrevealmenu/src/main/resources/base/layout/row_vertical_menu_item.xml create mode 100644 fabrevealmenu/src/main/resources/base/layout/row_vertical_menu_item_small.xml create mode 100644 fabrevealmenu/src/test/java/com/hlab/fabrevealmenu/ExampleTest.java create mode 100644 gif/fabmenu.gif delete mode 100644 sample/Screenshot_1511248877.png delete mode 100644 sample/Screenshot_1511248898.png delete mode 100644 sample/custom.gif delete mode 100644 sample/custom.mov diff --git a/.gitignore b/.gitignore index f5353c2..37a4eb8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,26 +1,15 @@ -# Created by .ignore support plugin (hsz.mobi) -### Android template -# Built application files -*.apk -*.ap_ - -# Files for the ART/Dalvik VM -*.dex - -# Generated files -bin/ -gen/ -out/ - -# Gradle files -.gradle/ - -# Local configuration file (sdk path, etc) -local.properties - -# Intellij *.iml -.idea/ +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store /build -/app/build -/fabrevealmenu/build +/captures +.externalNativeBuild +/entry/.preview +.cxx diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..6e6b3e4 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,4 @@ +## 0.0.1-SNAPSHOT +* ohos 第一个版本 +* 实现了原库的大部分 api +* 因为ViewCompat.setTransitionName()方法无替代方案,导致转场揭露动画效果没有实现 diff --git a/README.OPENSOURCE b/README.OPENSOURCE new file mode 100644 index 0000000..2465944 --- /dev/null +++ b/README.OPENSOURCE @@ -0,0 +1,10 @@ +[ + { + "Name": " FABRevealMenu ", + "License": " Apache License ", + "License File": " LICENSE ", + "Version Number": " 2.0.0 ", + "Upstream URL": " https://github.com/HarinTrivedi/FABRevealMenu-master ", + "Description": " An simple general purpose UI library to create custom user defied menu in modern way with your favourite Floating action button " + } +] diff --git a/README.md b/README.md index 0c36739..2faa64f 100644 --- a/README.md +++ b/README.md @@ -1,119 +1,95 @@ -# FABRevealMenu 2.0 ✌️ -*** -An simple general purpose UI library to create custom user defied menu in modern way with your favourite Floating action button. It incorporates lollipop circular reveal view with cool animations somewhat inspired from google material design guideline - -Uses [Material Container Transformation](https://material.io/develop/android/theming/motion#container-transform) from material components by Google. -*** - -gradle dependency: - -Step 1. Add it in your root build.gradle at the end of repositories: - -```` +# FABRevealMenu 2.0 +#### 项目介绍 +- 项目名称:FABRevealMenu +- 所属系列:OpenHarmony的第三方组件适配移植 +- 功能:代码块高亮显示。 +- 项目移植状态:完成 +- 调用差异:无 +- 开发版本:sdk5,DevEco Studio2.1 Beta4 +- 基线版本:FABRevealMenu组件 Release 2.0.0 + +#### 效果演示 +![img](gif/fabmenu.gif) + +#### 安装教程 +1.在项目根目录下的build.gradle文件中, +```gradle allprojects { - repositories { - ... - maven { url 'https://jitpack.io' } - } + repositories { + maven { + url 'https://s01.oss.sonatype.org/content/repositories/snapshots/' + } + } } -```` -Step 2. Add the dependency - -```` -compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } -.... - +``` +2.在entry模块的build.gradle文件中, +```gradle dependencies { - implementation 'com.github.HarinTrivedi:FABRevealMenu-master:2.0.0' + implementation('com.gitee.chinasoft_ohos:FABRevealMenu:0.0.1-SNAPSHOT') + ...... } - -```` - - -## What's new: -* Vector icon support -* Font support -* Disable menut item -* Set menu corder radius -* Set custom animation duration - -## Demo -* Horizontal Menu - -![demo_horizontal](https://i.imgur.com/238nJX7.gif) - -* Vertical Menu - -![demo_vertical](https://i.imgur.com/OQwH1ls.gif) - -* Custom view in Menu - -![demo_custom](https://i.imgur.com/FMrFoHs.gif) - -*** -## How to use -* By xml - -Add namespace in layout like: - - xmlns:app="http://schemas.android.com/apk/res-auto" - -Use FABRevealMenu in xml layout like: - - - - - -* By Code - -All attributes can also be set/altered by below methods: - -```` - setMenu(@MenuRes) // set R.menu resourece + app:menuDirection="left" + app:menuSize="normal" + app:menuTitleFontFamily="huakangshaonv.ttf" + app:menuTitleTextColor="$color:colorWhite" + app:showOverlay="true" + app:menuCornerRadius="15vp" + app:showTitle="true" /> + ``` + +2. 在java中使用: + ```java setMenuItems(ArrayList) // set custom menu items - setOverlayBackground(@ColorRes) // change default overlay background color - setMenuBackground(@ColorRes) // change menu background color + setOverlayBackground($ColorRes) // change default overlay background color + setMenuBackground($ColorRes) // change menu background color setShowOverlay(boolean) // change overlay visibility : be careful to use this setTitleVisible(boolean) // set menu item title visibility - setMenuTitleTextColor(@ColorRes) // change menu item text color + setMenuTitleTextColor($ColorRes) // change menu item text color setMenuDirection(Direction) // change menu direction when showed : place FAB on screen properly to change directions setSmallerMenu() // small size menu setNormalMenu() // normal size menu - setMenuTitleDisabledTextColor(@ColorRes) // set disable text color - setMenuTitleTypeface(@FontRes) // set custom font typeface + setMenuTitleDisabledTextColor($ ColorRes) // set disable text color + setMenuTitleTypeface(String) // set custom font typeface + ``` + +3. 设置自定义View + ```xml + app:menuCustomView="$layoutRes" + ``` + ```java + setCustomView(Component) + ``` -```` +#### 测试信息 + +CodeCheck代码测试无异常 -* Set custom view +CloudTest代码测试无异常 -You can inflate custom view by two ways +火绒安全病毒安全检测通过 -1. **app:menuCustomView="@layoutRes"** // you can get custom view object by calling getCustomView() on fabRevealMenu instance +当前版本demo功能与原组件基本无差异 -2. **setCustomView(View)** -*** +#### 版本迭代 -## LICENSE +- 0.0.1-SNAPSHOT + +#### 版权和许可信息 ```` Copyright 2020 Harry's Lab @@ -127,5 +103,4 @@ Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and -limitations under the License. -```` +limitat diff --git a/_config.yml b/_config.yml deleted file mode 100644 index b849713..0000000 --- a/_config.yml +++ /dev/null @@ -1 +0,0 @@ -theme: jekyll-theme-leap-day \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle deleted file mode 100755 index c96e6a1..0000000 --- a/app/build.gradle +++ /dev/null @@ -1,35 +0,0 @@ -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' - -android { - compileSdkVersion 29 - - defaultConfig { - applicationId "com.hlabexamples.fabrevealmenu" - minSdkVersion 21 - targetSdkVersion 29 - versionCode 1 - versionName "1.0.0" - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } - } - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } -} - -dependencies { - implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'com.google.android.material:material:1.2.0' - implementation project(':fabrevealmenu') - implementation "androidx.core:core-ktx:+" - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" -} -repositories { - mavenCentral() -} diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro deleted file mode 100755 index 6f69dd2..0000000 --- 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 /Volumes/DATA/Android-Setup/android-sdk-mac_86/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 *; -#} diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml deleted file mode 100755 index f1b8849..0000000 --- a/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/java/com/hlabexamples/fabrevealmenu/BaseFragment.java b/app/src/main/java/com/hlabexamples/fabrevealmenu/BaseFragment.java deleted file mode 100755 index e3eb74d..0000000 --- a/app/src/main/java/com/hlabexamples/fabrevealmenu/BaseFragment.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.hlabexamples.fabrevealmenu; - - -import androidx.fragment.app.Fragment; - -import com.hlab.fabrevealmenu.view.FABRevealMenu; - -/** - * A simple {@link Fragment} subclass. - */ -public class BaseFragment extends Fragment { - - private FABRevealMenu fabMenu; - - public boolean onBackPressed() { - if (fabMenu != null) { - if (fabMenu.isShowing()) { - fabMenu.closeMenu(); - return false; - } - } - return true; - } - - public FABRevealMenu getFabMenu() { - return fabMenu; - } - - public void setFabMenu(FABRevealMenu fabMenu) { - this.fabMenu = fabMenu; - } -} diff --git a/app/src/main/java/com/hlabexamples/fabrevealmenu/DemoCodeFragment.java b/app/src/main/java/com/hlabexamples/fabrevealmenu/DemoCodeFragment.java deleted file mode 100755 index 5e370d0..0000000 --- a/app/src/main/java/com/hlabexamples/fabrevealmenu/DemoCodeFragment.java +++ /dev/null @@ -1,155 +0,0 @@ -package com.hlabexamples.fabrevealmenu; - -import android.os.Bundle; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; - -import com.google.android.material.floatingactionbutton.FloatingActionButton; - -import androidx.core.content.res.ResourcesCompat; -import androidx.appcompat.content.res.AppCompatResources; - -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.AdapterView; -import android.widget.ArrayAdapter; -import android.widget.CheckBox; -import android.widget.Spinner; -import android.widget.Toast; - -import com.hlab.fabrevealmenu.helper.Direction; -import com.hlab.fabrevealmenu.helper.OnFABMenuSelectedListener; -import com.hlab.fabrevealmenu.model.FABMenuItem; -import com.hlab.fabrevealmenu.view.FABRevealMenu; - -import java.util.ArrayList; -import java.util.Objects; - -public class DemoCodeFragment extends BaseFragment implements OnFABMenuSelectedListener { - - private ArrayList items; - private String[] mDirectionStrings = {"LEFT", "UP"}; - private Direction currentDirection = Direction.LEFT; - - @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, - Bundle savedInstanceState) { - return inflater.inflate(R.layout.fragment_code, container, false); - } - - @Override - public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { - super.onViewCreated(view, savedInstanceState); - - initItems(false); - - final FABRevealMenu fabMenu = initFabMenu(view); - - initListeners(view, fabMenu); - } - - private FABRevealMenu initFabMenu(@NonNull View view) { - FloatingActionButton fab = view.findViewById(R.id.fab); - final FABRevealMenu fabMenu = view.findViewById(R.id.fabMenu); - - try { - if (fab != null && fabMenu != null) { - //attach menu to fab - setFabMenu(fabMenu); - //set menu items from arrylist - fabMenu.setMenuItems(items); - //attach menu to fab - fabMenu.bindAnchorView(fab); - //set menu item selection - fabMenu.setOnFABMenuSelectedListener(this); - } - } catch (Exception e) { - e.printStackTrace(); - } - return fabMenu; - } - - private void initListeners(@NonNull View view, FABRevealMenu fabMenu) { - CheckBox cbTitle = view.findViewById(R.id.chTitle); - cbTitle.setOnCheckedChangeListener((compoundButton, b) -> { - if (fabMenu != null) { - fabMenu.setTitleVisible(b); - } - }); - CheckBox cbShowOverlay = view.findViewById(R.id.chOverlay); - cbShowOverlay.setOnCheckedChangeListener((compoundButton, b) -> { - if (fabMenu != null) { - fabMenu.setShowOverlay(b); - } - }); - CheckBox cbDouble = view.findViewById(R.id.chDouble); - cbDouble.setOnCheckedChangeListener((compoundButton, b) -> { - if (fabMenu != null) { - initItems(b); - fabMenu.setMenuItems(items); - } - }); - CheckBox cbFont = view.findViewById(R.id.chFont); - cbFont.setOnCheckedChangeListener((compoundButton, b) -> { - if (fabMenu != null) { - //set custom font typeface - fabMenu.setMenuTitleTypeface(ResourcesCompat.getFont(Objects.requireNonNull(getActivity()), R.font.quicksand)); - } - }); - CheckBox chSmall = view.findViewById(R.id.chSmall); - chSmall.setOnCheckedChangeListener((compoundButton, isSmaller) -> { - if (fabMenu != null) { - if (isSmaller) - fabMenu.setSmallerMenu(); - else - fabMenu.setNormalMenu(); - } - }); - Spinner spDirections = view.findViewById(R.id.spDirection); - spDirections.setAdapter(new ArrayAdapter<>(Objects.requireNonNull(getActivity()), android.R.layout.simple_spinner_dropdown_item, mDirectionStrings)); - spDirections.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { - @Override - public void onItemSelected(AdapterView adapterView, View view, int position, long l) { - if (fabMenu != null) { - if (position == 0 && currentDirection != Direction.LEFT) { - currentDirection = Direction.LEFT; - fabMenu.setMenuDirection(Direction.LEFT); - } else if (position == 1 && currentDirection != Direction.UP) { - currentDirection = Direction.UP; - fabMenu.setMenuDirection(Direction.UP); - } - } - } - - @Override - public void onNothingSelected(AdapterView adapterView) { - if (fabMenu != null) { - fabMenu.setMenuDirection(Direction.LEFT); - } - } - }); - } - - private void initItems(boolean toShowDoubleItems) { - items = new ArrayList<>(); - items.add(new FABMenuItem("Attachments", AppCompatResources.getDrawable(Objects.requireNonNull(getActivity()), R.drawable.ic_attachment))); - items.add(new FABMenuItem("Images", AppCompatResources.getDrawable(getActivity(), R.drawable.ic_image))); - items.add(new FABMenuItem("Places", AppCompatResources.getDrawable(getActivity(), R.drawable.ic_place))); - items.add(new FABMenuItem("Emoticons", AppCompatResources.getDrawable(getActivity(), R.drawable.ic_emoticon))); - if (toShowDoubleItems) { - items.add(new FABMenuItem("Attachments", AppCompatResources.getDrawable(getActivity(), R.drawable.ic_attachment))); - items.add(new FABMenuItem("Images", AppCompatResources.getDrawable(getActivity(), R.drawable.ic_image))); - items.add(new FABMenuItem("Places", AppCompatResources.getDrawable(getActivity(), R.drawable.ic_place))); - items.add(new FABMenuItem("Emoticons", AppCompatResources.getDrawable(getActivity(), R.drawable.ic_emoticon))); - } - } - - @Override - public void onMenuItemSelected(View view, int id) { - if (id >= 0 && items != null && items.size() > id) { - Toast.makeText(getActivity(), items.get(id).getTitle() + "Clicked", Toast.LENGTH_SHORT).show(); - } - } -} \ No newline at end of file diff --git a/app/src/main/java/com/hlabexamples/fabrevealmenu/DemoXmlFragment.java b/app/src/main/java/com/hlabexamples/fabrevealmenu/DemoXmlFragment.java deleted file mode 100755 index c3a3aa4..0000000 --- a/app/src/main/java/com/hlabexamples/fabrevealmenu/DemoXmlFragment.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.hlabexamples.fabrevealmenu; - -import android.os.Bundle; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; - -import com.google.android.material.floatingactionbutton.FloatingActionButton; - -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.AdapterView; -import android.widget.ArrayAdapter; -import android.widget.Spinner; -import android.widget.Toast; - -import com.hlab.fabrevealmenu.helper.Direction; -import com.hlab.fabrevealmenu.helper.OnFABMenuSelectedListener; -import com.hlab.fabrevealmenu.view.FABRevealMenu; - -public class DemoXmlFragment extends BaseFragment implements OnFABMenuSelectedListener { - - private String[] mDirectionStrings = {"LEFT", "UP"}; - private Direction currentDirection = Direction.LEFT; - - @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, - Bundle savedInstanceState) { - return inflater.inflate(R.layout.fragment_xml, container, false); - } - - @Override - public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { - super.onViewCreated(view, savedInstanceState); - - final FABRevealMenu fabMenu = initFabMenu(view); - - initListeners(view, fabMenu); - } - - private FABRevealMenu initFabMenu(View view) { - final FloatingActionButton fab = view.findViewById(R.id.fab); - final FABRevealMenu fabMenu = view.findViewById(R.id.fabMenu); - - try { - if (fab != null && fabMenu != null) { - setFabMenu(fabMenu); - //attach menu to fab - fabMenu.bindAnchorView(fab); - //set menu selection listener - fabMenu.setOnFABMenuSelectedListener(this); - } - } catch (Exception e) { - e.printStackTrace(); - } - return fabMenu; - } - - private void initListeners(View view, FABRevealMenu fabMenu) { - Spinner spDirections = view.findViewById(R.id.spDirection); - spDirections.setAdapter(new ArrayAdapter<>(getActivity(), android.R.layout.simple_spinner_dropdown_item, mDirectionStrings)); - spDirections.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { - @Override - public void onItemSelected(AdapterView adapterView, View view, int position, long l) { - if (fabMenu != null) { - if (position == 0 && currentDirection != Direction.LEFT) { - currentDirection = Direction.LEFT; - fabMenu.setMenuDirection(Direction.LEFT); - } else if (position == 1 && currentDirection != Direction.UP) { - currentDirection = Direction.UP; - fabMenu.setMenuDirection(Direction.UP); - } - } - } - - @Override - public void onNothingSelected(AdapterView adapterView) { - if (fabMenu != null) { - fabMenu.setMenuDirection(Direction.LEFT); - } - } - }); - } - - @Override - public void onMenuItemSelected(View view, int id) { - if (id == R.id.menu_attachment) { - Toast.makeText(getActivity(), "Attachment Selected", Toast.LENGTH_SHORT).show(); - } else if (id == R.id.menu_image) { - Toast.makeText(getActivity(), "Image Selected", Toast.LENGTH_SHORT).show(); - } else if (id == R.id.menu_place) { - Toast.makeText(getActivity(), "Place Selected", Toast.LENGTH_SHORT).show(); - } else if (id == R.id.menu_emoticon) { - Toast.makeText(getActivity(), "Emoticon Selected", Toast.LENGTH_SHORT).show(); - } - } -} \ No newline at end of file diff --git a/app/src/main/java/com/hlabexamples/fabrevealmenu/MainActivity.java b/app/src/main/java/com/hlabexamples/fabrevealmenu/MainActivity.java deleted file mode 100644 index 3b06ce2..0000000 --- a/app/src/main/java/com/hlabexamples/fabrevealmenu/MainActivity.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.hlabexamples.fabrevealmenu; - -import android.content.Intent; -import android.os.Bundle; - -import androidx.annotation.NonNull; - -import com.google.android.material.bottomnavigation.BottomNavigationView; - -import androidx.appcompat.app.AppCompatActivity; -import androidx.appcompat.widget.Toolbar; - -import android.view.MenuItem; - -public class MainActivity extends AppCompatActivity implements BottomNavigationView.OnNavigationItemSelectedListener { - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); - Toolbar toolbar = findViewById(R.id.toolbar); - setSupportActionBar(toolbar); - - BottomNavigationView navigation = findViewById(R.id.navigation); - navigation.setOnNavigationItemSelectedListener(this); - - showXmlFragment(); - - } - - @Override - public boolean onNavigationItemSelected(@NonNull MenuItem item) { - // Handle navigation view item clicks here. - int id = item.getItemId(); - - if (id == R.id.nav_xml) { - showXmlFragment(); - return true; - } else if (id == R.id.nav_code) { - showCodeFragment(); - return true; - } else if (id == R.id.nav_custom) { - Intent intent = new Intent(MainActivity.this, ScrollingActivity.class); - startActivity(intent); - return true; - } - return false; - } - - private void showXmlFragment() { - getSupportFragmentManager().beginTransaction().replace(R.id.container, new DemoXmlFragment()).commit(); - } - - private void showCodeFragment() { - getSupportFragmentManager().beginTransaction().replace(R.id.container, new DemoCodeFragment()).commit(); - } - -} diff --git a/app/src/main/java/com/hlabexamples/fabrevealmenu/ScrollingActivity.java b/app/src/main/java/com/hlabexamples/fabrevealmenu/ScrollingActivity.java deleted file mode 100755 index 8896a8c..0000000 --- a/app/src/main/java/com/hlabexamples/fabrevealmenu/ScrollingActivity.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.hlabexamples.fabrevealmenu; - -import android.os.Bundle; - -import com.google.android.material.floatingactionbutton.FloatingActionButton; - -import androidx.appcompat.app.AppCompatActivity; -import androidx.appcompat.widget.Toolbar; - -import android.view.MenuItem; -import android.view.View; -import android.widget.Button; -import android.widget.CheckBox; -import android.widget.Toast; - -import com.hlab.fabrevealmenu.view.FABRevealMenu; - -import java.util.Objects; - -public class ScrollingActivity extends AppCompatActivity { - FABRevealMenu fabMenu; - - @Override - public void onBackPressed() { - if (fabMenu.isShowing()) - fabMenu.closeMenu(); - else - super.onBackPressed(); - } - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_scrolling); - Toolbar toolbar = findViewById(R.id.toolbar); - setSupportActionBar(toolbar); - - Objects.requireNonNull(getSupportActionBar()).setDisplayShowHomeEnabled(true); - getSupportActionBar().setDisplayHomeAsUpEnabled(true); - - final FloatingActionButton fab = findViewById(R.id.fab); - fabMenu = findViewById(R.id.fabMenu); - - try { - if (fab != null && fabMenu != null) { - - View customView = View.inflate(this, R.layout.layout_custom_menu, null); - setupCustomFilterView(customView); - fabMenu.setCustomView(customView); - fabMenu.bindAnchorView(fab); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - - - private void setupCustomFilterView(View customView) { - if (customView != null) { - Button btnApply = customView.findViewById(R.id.btnApply); - CheckBox cb1 = customView.findViewById(R.id.cb1); - CheckBox cb2 = customView.findViewById(R.id.cb2); - CheckBox cb3 = customView.findViewById(R.id.cb3); - CheckBox cb4 = customView.findViewById(R.id.cb4); - - final CheckBox[] filters = new CheckBox[]{cb1, cb2, cb3, cb4}; - - btnApply.setOnClickListener(view -> { - fabMenu.closeMenu(); - StringBuilder builder = new StringBuilder("Selected:"); - for (CheckBox filter : filters) { - if (filter.isChecked()) { - builder.append("\n").append(filter.getText().toString()); - } - } - Toast.makeText(ScrollingActivity.this, builder.toString(), Toast.LENGTH_SHORT).show(); - }); - } - - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - if (item.getItemId() == android.R.id.home) - finish(); - return super.onOptionsItemSelected(item); - } -} diff --git a/app/src/main/res/drawable/ic_attachment.xml b/app/src/main/res/drawable/ic_attachment.xml deleted file mode 100644 index 7e43cc9..0000000 --- a/app/src/main/res/drawable/ic_attachment.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_code.xml b/app/src/main/res/drawable/ic_code.xml deleted file mode 100644 index 5bd4000..0000000 --- a/app/src/main/res/drawable/ic_code.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_design.xml b/app/src/main/res/drawable/ic_design.xml deleted file mode 100644 index 871d6ea..0000000 --- a/app/src/main/res/drawable/ic_design.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_emoticon.xml b/app/src/main/res/drawable/ic_emoticon.xml deleted file mode 100644 index 118e8a8..0000000 --- a/app/src/main/res/drawable/ic_emoticon.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_hand.xml b/app/src/main/res/drawable/ic_hand.xml deleted file mode 100644 index 030dbb5..0000000 --- a/app/src/main/res/drawable/ic_hand.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_image.xml b/app/src/main/res/drawable/ic_image.xml deleted file mode 100644 index e454be8..0000000 --- a/app/src/main/res/drawable/ic_image.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_menu.xml b/app/src/main/res/drawable/ic_menu.xml deleted file mode 100644 index 0650793..0000000 --- a/app/src/main/res/drawable/ic_menu.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_place.xml b/app/src/main/res/drawable/ic_place.xml deleted file mode 100644 index fa6efd9..0000000 --- a/app/src/main/res/drawable/ic_place.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/side_nav_bar.xml b/app/src/main/res/drawable/side_nav_bar.xml deleted file mode 100755 index 18d28cf..0000000 --- a/app/src/main/res/drawable/side_nav_bar.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml deleted file mode 100644 index e4b1d45..0000000 --- a/app/src/main/res/layout/activity_main.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - diff --git a/app/src/main/res/layout/activity_scrolling.xml b/app/src/main/res/layout/activity_scrolling.xml deleted file mode 100755 index e993657..0000000 --- a/app/src/main/res/layout/activity_scrolling.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/app_bar_main.xml b/app/src/main/res/layout/app_bar_main.xml deleted file mode 100755 index 779a75c..0000000 --- a/app/src/main/res/layout/app_bar_main.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/content_scrolling.xml b/app/src/main/res/layout/content_scrolling.xml deleted file mode 100755 index 97aa5cb..0000000 --- a/app/src/main/res/layout/content_scrolling.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - diff --git a/app/src/main/res/layout/fragment_code.xml b/app/src/main/res/layout/fragment_code.xml deleted file mode 100755 index dc1639b..0000000 --- a/app/src/main/res/layout/fragment_code.xml +++ /dev/null @@ -1,143 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/fragment_xml.xml b/app/src/main/res/layout/fragment_xml.xml deleted file mode 100755 index 4ca1f9c..0000000 --- a/app/src/main/res/layout/fragment_xml.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/layout_custom_menu.xml b/app/src/main/res/layout/layout_custom_menu.xml deleted file mode 100755 index c4f259a..0000000 --- a/app/src/main/res/layout/layout_custom_menu.xml +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/nav_header_main.xml b/app/src/main/res/layout/nav_header_main.xml deleted file mode 100755 index 2e82465..0000000 --- a/app/src/main/res/layout/nav_header_main.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - diff --git a/app/src/main/res/menu/bottom_menu.xml b/app/src/main/res/menu/bottom_menu.xml deleted file mode 100755 index f926e67..0000000 --- a/app/src/main/res/menu/bottom_menu.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - diff --git a/app/src/main/res/menu/menu_fab.xml b/app/src/main/res/menu/menu_fab.xml deleted file mode 100755 index f943861..0000000 --- a/app/src/main/res/menu/menu_fab.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png deleted file mode 100755 index cde69bcccec65160d92116f20ffce4fce0b5245c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3418 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 diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/app/src/main/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100755 index bfa42f0e7b91d006d22352c9ff2f134e504e3c1d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4842 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 diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100755 index 324e72cdd7480cb983fa1bcc7ce686e51ef87fe7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7718 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 diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100755 index aee44e138434630332d88b1680f33c4b24c70ab3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10486 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 - - #1976d2 - #145391 - #1976d2 - diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml deleted file mode 100755 index 0afe4cc..0000000 --- a/app/src/main/res/values/dimens.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - 16dp - 16dp - 16dp - 220dp - 16dp - - 16dp - 160dp - diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml deleted file mode 100755 index 96006b9..0000000 --- a/app/src/main/res/values/strings.xml +++ /dev/null @@ -1,117 +0,0 @@ - - FABRevealMenu - ScrollingActivity - - This fragment shows xml configuration of FabRevealMenu with horizontal orientation. Play with different layout attributes to customize the experience - This fragment shows dynamic configuration of FabRevealMenu with dynamic menu item creation. - - Show Title - Show More Items - Show Overlay - Change Direction : - - Custom font - Smaller menu - Animate - - (To use \'RIGHT\' and \'DOWN\' directions, you are recommended to place your FAB at proper place on screen) - - - "Material is the metaphor.\n\n" - - "A material metaphor is the unifying theory of a rationalized space and a system of motion." - "The material is grounded in tactile reality, inspired by the study of paper and ink, yet " - "technologically advanced and open to imagination and magic.\n" - "Surfaces and edges of the material provide visual cues that are grounded in reality. The " - "use of familiar tactile attributes helps users quickly understand affordances. Yet the " - "flexibility of the material creates new affordances that supercede those in the physical " - "world, without breaking the rules of physics.\n" - "The fundamentals of light, surface, and movement are key to conveying how objects move, " - "interact, and exist in space and in relation to each other. Realistic lighting shows " - "seams, divides space, and indicates moving parts.\n\n" - - "Bold, graphic, intentional.\n\n" - - "The foundational elements of print based design typography, grids, space, scale, color, " - "and use of imagery guide visual treatments. These elements do far more than please the " - "eye. They create hierarchy, meaning, and focus. Deliberate color choices, edge to edge " - "imagery, large scale typography, and intentional white space create a bold and graphic " - "interface that immerse the user in the experience.\n" - "An emphasis on user actions makes core functionality immediately apparent and provides " - "waypoints for the user.\n\n" - - "Motion provides meaning.\n\n" - - "Motion respects and reinforces the user as the prime mover. Primary user actions are " - "inflection points that initiate motion, transforming the whole design.\n" - "All action takes place in a single environment. Objects are presented to the user without " - "breaking the continuity of experience even as they transform and reorganize.\n" - "Motion is meaningful and appropriate, serving to focus attention and maintain continuity. " - "Feedback is subtle yet clear. Transitions are efficient yet coherent.\n\n" - - "3D world.\n\n" - - "The material environment is a 3D space, which means all objects have x, y, and z " - "dimensions. The z-axis is perpendicularly aligned to the plane of the display, with the " - "positive z-axis extending towards the viewer. Every sheet of material occupies a single " - "position along the z-axis and has a standard 1dp thickness.\n" - "On the web, the z-axis is used for layering and not for perspective. The 3D world is " - "emulated by manipulating the y-axis.\n\n" - - "Light and shadow.\n\n" - - "Within the material environment, virtual lights illuminate the scene. Key lights create " - "directional shadows, while ambient light creates soft shadows from all angles.\n" - "Shadows in the material environment are cast by these two light sources. In Android " - "development, shadows occur when light sources are blocked by sheets of material at " - "various positions along the z-axis. On the web, shadows are depicted by manipulating the " - "y-axis only. The following example shows the card with a height of 6dp.\n\n" - - "Resting elevation.\n\n" - - "All material objects, regardless of size, have a resting elevation, or default elevation " - "that does not change. If an object changes elevation, it should return to its resting " - "elevation as soon as possible.\n\n" - - "Component elevations.\n\n" - - "The resting elevation for a component type is consistent across apps (e.g., FAB elevation " - "does not vary from 6dp in one app to 16dp in another app).\n" - "Components may have different resting elevations across platforms, depending on the depth " - "of the environment (e.g., TV has a greater depth than mobile or desktop).\n\n" - - "Responsive elevation and dynamic elevation offsets.\n\n" - - "Some component types have responsive elevation, meaning they change elevation in response " - "to user input (e.g., normal, focused, and pressed) or system events. These elevation " - "changes are consistently implemented using dynamic elevation offsets.\n" - "Dynamic elevation offsets are the goal elevation that a component moves towards, relative " - "to the component’s resting state. They ensure that elevation changes are consistent " - "across actions and component types. For example, all components that lift on press have " - "the same elevation change relative to their resting elevation.\n" - "Once the input event is completed or cancelled, the component will return to its resting " - "elevation.\n\n" - - "Avoiding elevation interference.\n\n" - - "Components with responsive elevations may encounter other components as they move between " - "their resting elevations and dynamic elevation offsets. Because material cannot pass " - "through other material, components avoid interfering with one another any number of ways, " - "whether on a per component basis or using the entire app layout.\n" - "On a component level, components can move or be removed before they cause interference. " - "For example, a floating action button (FAB) can disappear or move off screen before a " - "user picks up a card, or it can move if a snackbar appears.\n" - "On the layout level, design your app layout to minimize opportunities for interference. " - "For example, position the FAB to one side of stream of a cards so the FAB won’t interfere " - "when a user tries to pick up one of cards.\n\n" - - - - open_drawer - close_drawer - Main2Activity - Home - Dashboard - Notifications - - diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml deleted file mode 100755 index 2395d7d..0000000 --- a/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - -