From e0c94718f0db9aa4567b29e5d732164faa2f1b4f Mon Sep 17 00:00:00 2001 From: Mengqinghe Date: Wed, 9 Jun 2021 15:46:36 +0800 Subject: [PATCH 1/7] update --- ClockFACardDemo/LICENSE | 78 +++++++ ClockFACardDemo/README.md | 47 ++++ ClockFACardDemo/RELEASE-NOTES.md | 2 + ClockFACardDemo/build.gradle | 36 +++ ClockFACardDemo/entry/.gitignore | 1 + ClockFACardDemo/entry/build.gradle | 23 ++ ClockFACardDemo/entry/proguard-rules.pro | 1 + ClockFACardDemo/entry/src/main/config.json | 84 +++++++ .../com/huawei/cookbooks/MainAbility.java | 115 ++++++++++ .../com/huawei/cookbooks/MyApplication.java | 28 +++ .../com/huawei/cookbooks/TimerAbility.java | 102 +++++++++ .../com/huawei/cookbooks/database/Form.java | 63 +++++ .../cookbooks/database/FormDatabase.java | 27 +++ .../cookbooks/slice/ClockCardSlice.java | 172 ++++++++++++++ .../utils/ComponentProviderUtils.java | 173 ++++++++++++++ .../huawei/cookbooks/utils/DatabaseUtils.java | 55 +++++ .../com/huawei/cookbooks/utils/DateUtils.java | 38 +++ .../com/huawei/cookbooks/utils/LogUtils.java | 72 ++++++ .../main/resources/base/element/string.json | 20 ++ .../base/graphic/background_ability_main.xml | 6 + .../resources/base/layout/ability_main.xml | 17 ++ .../form_image_with_info_date_card_2_2.xml | 203 ++++++++++++++++ .../form_image_with_info_date_card_2_4.xml | 216 ++++++++++++++++++ ...age_with_info_datecard_default_image_2.png | Bin 0 -> 6244 bytes ...ge_with_info_form_card_default_image_2.png | Bin 0 -> 6244 bytes .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../entry/src/ohosTest/config.json | 39 ++++ .../com/huawei/cookbooks/ExampleOhosTest.java | 12 + .../com/huawei/cookbooks/ExampleTest.java | 9 + .../gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 58694 bytes .../gradle/wrapper/gradle-wrapper.properties | 5 + ClockFACardDemo/settings.gradle | 1 + ComponentCodelab/LICENSE | 6 +- ComponentCodelab/build.gradle | 2 +- ComponentCodelab/checkbox/build.gradle | 28 +++ .../checkbox/src/main/config.json | 37 +++ .../java/com/huawei/checkbox/MainAbility.java | 32 +++ .../com/huawei/checkbox/MyApplication.java | 28 +++ .../checkbox/slice/MainAbilitySlice.java | 120 ++++++++++ .../main/resources/base/element/string.json | 16 ++ .../base/graphic/background_checkbox.xml | 6 + .../main/resources/base/layout/checkbox.xml | 71 ++++++ .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../src/main/resources/en/element/string.json | 16 ++ .../src/main/resources/zh/element/string.json | 16 ++ .../com/huawei/checkbox/ExampleOhosTest.java | 14 ++ .../java/com/huawei/checkbox/ExampleTest.java | 9 + ComponentCodelab/datepicker/build.gradle | 28 +++ .../datepicker/src/main/config.json | 37 +++ .../com/huawei/datepicker/MainAbility.java | 32 +++ .../com/huawei/datepicker/MyApplication.java | 28 +++ .../datepicker/slice/MainAbilitySlice.java | 84 +++++++ .../main/resources/base/element/string.json | 16 ++ .../base/graphic/background_data_picker.xml | 6 + .../resources/base/graphic/button_element.xml | 8 + .../resources/base/layout/data_picker.xml | 46 ++++ .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../src/main/resources/en/element/string.json | 16 ++ .../src/main/resources/zh/element/string.json | 16 ++ .../huawei/datepicker/ExampleOhosTest.java | 14 ++ .../com/huawei/datepicker/ExampleTest.java | 9 + ComponentCodelab/dependentlayout/build.gradle | 28 +++ .../dependentlayout/src/main/config.json | 37 +++ .../huawei/dependentlayout/MainAbility.java | 32 +++ .../huawei/dependentlayout/MyApplication.java | 28 +++ .../slice/MainAbilitySlice.java | 42 ++++ .../main/resources/base/element/string.json | 16 ++ .../graphic/background_dependent_layout.xml | 6 + .../base/graphic/corner_bg_comment.xml | 8 + .../base/layout/dependent_layout.xml | 154 +++++++++++++ .../resources/base/media/collect_icon.jpg | Bin 0 -> 9979 bytes .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../main/resources/base/media/like_icon.jpg | Bin 0 -> 4023 bytes .../resources/base/media/message_icon.jpg | Bin 0 -> 3032 bytes .../main/resources/base/media/news_image.jpg | Bin 0 -> 32851 bytes .../resources/base/media/news_image_left.jpg | Bin 0 -> 45417 bytes .../resources/base/media/news_image_right.jpg | Bin 0 -> 48009 bytes .../main/resources/base/media/share_icon.jpg | Bin 0 -> 6719 bytes .../src/main/resources/en/element/string.json | 16 ++ .../src/main/resources/zh/element/string.json | 16 ++ .../dependentlayout/ExampleOhosTest.java | 14 ++ .../huawei/dependentlayout/ExampleTest.java | 9 + .../directionallayout/build.gradle | 28 +++ .../directionallayout/src/main/config.json | 37 +++ .../huawei/directionallayout/MainAbility.java | 32 +++ .../directionallayout/MyApplication.java | 28 +++ .../slice/MainAbilitySlice.java | 42 ++++ .../main/resources/base/element/string.json | 16 ++ .../graphic/background_directional_layout.xml | 6 + .../base/layout/directional_layout.xml | 97 ++++++++ .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../src/main/resources/en/element/string.json | 16 ++ .../src/main/resources/zh/element/string.json | 16 ++ .../directionallayout/ExampleOhosTest.java | 14 ++ .../huawei/directionallayout/ExampleTest.java | 9 + ComponentCodelab/entry/build.gradle | 2 +- ComponentCodelab/entry/src/main/config.json | 6 +- ComponentCodelab/listcontainer/build.gradle | 28 +++ .../listcontainer/src/main/config.json | 37 +++ .../java/com/huawei/cookbook/MainAbility.java | 32 +++ .../com/huawei/cookbook/MyApplication.java | 28 +++ .../huawei/cookbook/provider/NewsInfo.java | 40 ++++ .../cookbook/provider/NewsListProvider.java | 98 ++++++++ .../cookbook/provider/NewsTypeProvider.java | 91 ++++++++ .../cookbook/slice/MainAbilitySlice.java | 168 ++++++++++++++ .../main/resources/base/element/string.json | 16 ++ .../base/graphic/background_ability_main.xml | 6 + .../base/layout/item_news_layout.xml | 32 +++ .../base/layout/item_news_type_layout.xml | 15 ++ .../base/layout/news_list_layout.xml | 21 ++ .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../main/resources/base/media/news_image.jpg | Bin 0 -> 32851 bytes .../resources/base/media/news_image_left.jpg | Bin 0 -> 45417 bytes .../resources/base/media/news_image_right.jpg | Bin 0 -> 48009 bytes .../src/main/resources/en/element/string.json | 16 ++ .../src/main/resources/zh/element/string.json | 16 ++ .../com/huawei/cookbook/ExampleOhosTest.java | 14 ++ .../java/com/huawei/cookbook/ExampleTest.java | 9 + ComponentCodelab/radiocontainer/build.gradle | 28 +++ .../radiocontainer/src/main/config.json | 37 +++ .../huawei/radiocontainer/MainAbility.java | 32 +++ .../huawei/radiocontainer/MyApplication.java | 28 +++ .../slice/MainAbilitySlice.java | 86 +++++++ .../main/resources/base/element/string.json | 16 ++ .../graphic/background_radio_container.xml | 6 + .../resources/base/layout/radio_container.xml | 73 ++++++ .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../src/main/resources/en/element/string.json | 16 ++ .../src/main/resources/zh/element/string.json | 16 ++ .../radiocontainer/ExampleOhosTest.java | 14 ++ .../huawei/radiocontainer/ExampleTest.java | 9 + ComponentCodelab/settings.gradle | 2 +- ComponentCodelab/stacklayout/build.gradle | 28 +++ .../stacklayout/src/main/config.json | 37 +++ .../com/huawei/stacklayout/MainAbility.java | 32 +++ .../com/huawei/stacklayout/MyApplication.java | 28 +++ .../stacklayout/slice/MainAbilitySlice.java | 42 ++++ .../main/resources/base/element/string.json | 16 ++ .../base/graphic/background_stack_layout.xml | 8 + .../resources/base/layout/stack_layout.xml | 31 +++ .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../src/main/resources/en/element/string.json | 16 ++ .../src/main/resources/zh/element/string.json | 16 ++ .../huawei/stacklayout/ExampleOhosTest.java | 14 ++ .../com/huawei/stacklayout/ExampleTest.java | 9 + ComponentCodelab/tablelayout/build.gradle | 28 +++ .../tablelayout/src/main/config.json | 37 +++ .../com/huawei/tablelayout/MainAbility.java | 32 +++ .../com/huawei/tablelayout/MyApplication.java | 28 +++ .../tablelayout/slice/MainAbilitySlice.java | 117 ++++++++++ .../main/resources/base/element/string.json | 16 ++ .../base/graphic/background_table_layout.xml | 8 + .../resources/base/graphic/button_element.xml | 8 + .../base/graphic/circle_button_element.xml | 7 + .../resources/base/layout/table_layout.xml | 159 +++++++++++++ .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../src/main/resources/en/element/string.json | 16 ++ .../src/main/resources/zh/element/string.json | 16 ++ .../huawei/tablelayout/ExampleOhosTest.java | 14 ++ .../com/huawei/tablelayout/ExampleTest.java | 9 + ComponentCodelab/tablist/build.gradle | 28 +++ ComponentCodelab/tablist/src/main/config.json | 36 +++ .../java/com/huawei/cookbook/MainAbility.java | 32 +++ .../com/huawei/cookbook/MyApplication.java | 28 +++ .../cookbook/slice/MainAbilitySlice.java | 96 ++++++++ .../main/resources/base/element/string.json | 16 ++ .../base/graphic/background_ability_main.xml | 8 + .../main/resources/base/layout/tab_list.xml | 31 +++ .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes .../src/main/resources/en/element/string.json | 16 ++ .../src/main/resources/zh/element/string.json | 16 ++ .../com/huawei/cookbook/ExampleOhosTest.java | 14 ++ .../java/com/huawei/cookbook/ExampleTest.java | 9 + StepsCard/LICENSE | 78 +++++++ StepsCard/README.md | 46 ++++ StepsCard/RELEASE-NOTES.md | 2 + StepsCard/build.gradle | 36 +++ StepsCard/entry/.gitignore | 1 + StepsCard/entry/build.gradle | 26 +++ StepsCard/entry/src/main/config.json | 141 ++++++++++++ .../java/com/huawei/cookbook/MainAbility.java | 84 +++++++ .../com/huawei/cookbook/MyApplication.java | 28 +++ .../com/huawei/cookbook/StepFormAbility.java | 114 +++++++++ .../huawei/cookbook/StepSensorService.java | 167 ++++++++++++++ .../cookbook/cardentity/ChartPoint.java | 94 ++++++++ .../cookbook/cardentity/ChartValues.java | 67 ++++++ .../cookbook/cardentity/PointStyle.java | 83 +++++++ .../com/huawei/cookbook/database/Form.java | 80 +++++++ .../cookbook/database/FormDatabase.java | 26 +++ .../huawei/cookbook/database/SensorData.java | 63 +++++ .../cookbook/slice/MainAbilitySlice.java | 126 ++++++++++ .../cookbook/slice/StepFormAbilitySlice.java | 42 ++++ .../huawei/cookbook/utils/ChartDataUtils.java | 152 ++++++++++++ .../huawei/cookbook/utils/DatabaseUtils.java | 148 ++++++++++++ .../com/huawei/cookbook/utils/DateUtils.java | 54 +++++ .../com/huawei/cookbook/utils/LogUtils.java | 73 ++++++ .../cookbook/utils/PermissionBridge.java | 89 ++++++++ .../src/main/js/card2X2/common/backgroud.jpg | Bin 0 -> 56262 bytes .../src/main/js/card2X2/pages/index/index.css | 53 +++++ .../src/main/js/card2X2/pages/index/index.hml | 15 ++ .../src/main/js/card2X2/pages/index/index.js | 20 ++ .../main/js/card2X4/common/backgroundImg1.JPG | Bin 0 -> 96786 bytes .../src/main/js/card2X4/common/step2.png | Bin 0 -> 2315 bytes .../src/main/js/card2X4/pages/index/index.css | 113 +++++++++ .../src/main/js/card2X4/pages/index/index.hml | 39 ++++ .../src/main/js/card2X4/pages/index/index.js | 86 +++++++ .../main/resources/base/element/string.json | 28 +++ .../base/graphic/background_ability_main.xml | 6 + .../graphic/background_ability_step_form.xml | 8 + .../base/layout/ability_step_form.xml | 18 ++ .../base/layout/form_router_page.xml | 55 +++++ ...e_with_info_steps_card_default_image_2.png | Bin 0 -> 6244 bytes .../src/main/resources/base/media/icon.png | Bin 0 -> 6790 bytes StepsCard/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 58694 bytes .../gradle/wrapper/gradle-wrapper.properties | 5 + StepsCard/settings.gradle | 1 + 216 files changed, 7531 insertions(+), 9 deletions(-) create mode 100644 ClockFACardDemo/LICENSE create mode 100644 ClockFACardDemo/README.md create mode 100644 ClockFACardDemo/RELEASE-NOTES.md create mode 100644 ClockFACardDemo/build.gradle create mode 100644 ClockFACardDemo/entry/.gitignore create mode 100644 ClockFACardDemo/entry/build.gradle create mode 100644 ClockFACardDemo/entry/proguard-rules.pro create mode 100644 ClockFACardDemo/entry/src/main/config.json create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/MainAbility.java create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/MyApplication.java create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/TimerAbility.java create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/database/Form.java create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/database/FormDatabase.java create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/slice/ClockCardSlice.java create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/ComponentProviderUtils.java create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/DatabaseUtils.java create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/DateUtils.java create mode 100644 ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/LogUtils.java create mode 100644 ClockFACardDemo/entry/src/main/resources/base/element/string.json create mode 100644 ClockFACardDemo/entry/src/main/resources/base/graphic/background_ability_main.xml create mode 100644 ClockFACardDemo/entry/src/main/resources/base/layout/ability_main.xml create mode 100644 ClockFACardDemo/entry/src/main/resources/base/layout/form_image_with_info_date_card_2_2.xml create mode 100644 ClockFACardDemo/entry/src/main/resources/base/layout/form_image_with_info_date_card_2_4.xml create mode 100644 ClockFACardDemo/entry/src/main/resources/base/media/form_image_with_info_datecard_default_image_2.png create mode 100644 ClockFACardDemo/entry/src/main/resources/base/media/form_image_with_info_form_card_default_image_2.png create mode 100644 ClockFACardDemo/entry/src/main/resources/base/media/icon.png create mode 100644 ClockFACardDemo/entry/src/ohosTest/config.json create mode 100644 ClockFACardDemo/entry/src/ohosTest/java/com/huawei/cookbooks/ExampleOhosTest.java create mode 100644 ClockFACardDemo/entry/src/test/java/com/huawei/cookbooks/ExampleTest.java create mode 100644 ClockFACardDemo/gradle/wrapper/gradle-wrapper.jar create mode 100644 ClockFACardDemo/gradle/wrapper/gradle-wrapper.properties create mode 100644 ClockFACardDemo/settings.gradle create mode 100644 ComponentCodelab/checkbox/build.gradle create mode 100644 ComponentCodelab/checkbox/src/main/config.json create mode 100644 ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/MainAbility.java create mode 100644 ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/MyApplication.java create mode 100644 ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/slice/MainAbilitySlice.java create mode 100644 ComponentCodelab/checkbox/src/main/resources/base/element/string.json create mode 100644 ComponentCodelab/checkbox/src/main/resources/base/graphic/background_checkbox.xml create mode 100644 ComponentCodelab/checkbox/src/main/resources/base/layout/checkbox.xml create mode 100644 ComponentCodelab/checkbox/src/main/resources/base/media/icon.png create mode 100644 ComponentCodelab/checkbox/src/main/resources/en/element/string.json create mode 100644 ComponentCodelab/checkbox/src/main/resources/zh/element/string.json create mode 100644 ComponentCodelab/checkbox/src/ohosTest/java/com/huawei/checkbox/ExampleOhosTest.java create mode 100644 ComponentCodelab/checkbox/src/test/java/com/huawei/checkbox/ExampleTest.java create mode 100644 ComponentCodelab/datepicker/build.gradle create mode 100644 ComponentCodelab/datepicker/src/main/config.json create mode 100644 ComponentCodelab/datepicker/src/main/java/com/huawei/datepicker/MainAbility.java create mode 100644 ComponentCodelab/datepicker/src/main/java/com/huawei/datepicker/MyApplication.java create mode 100644 ComponentCodelab/datepicker/src/main/java/com/huawei/datepicker/slice/MainAbilitySlice.java create mode 100644 ComponentCodelab/datepicker/src/main/resources/base/element/string.json create mode 100644 ComponentCodelab/datepicker/src/main/resources/base/graphic/background_data_picker.xml create mode 100644 ComponentCodelab/datepicker/src/main/resources/base/graphic/button_element.xml create mode 100644 ComponentCodelab/datepicker/src/main/resources/base/layout/data_picker.xml create mode 100644 ComponentCodelab/datepicker/src/main/resources/base/media/icon.png create mode 100644 ComponentCodelab/datepicker/src/main/resources/en/element/string.json create mode 100644 ComponentCodelab/datepicker/src/main/resources/zh/element/string.json create mode 100644 ComponentCodelab/datepicker/src/ohosTest/java/com/huawei/datepicker/ExampleOhosTest.java create mode 100644 ComponentCodelab/datepicker/src/test/java/com/huawei/datepicker/ExampleTest.java create mode 100644 ComponentCodelab/dependentlayout/build.gradle create mode 100644 ComponentCodelab/dependentlayout/src/main/config.json create mode 100644 ComponentCodelab/dependentlayout/src/main/java/com/huawei/dependentlayout/MainAbility.java create mode 100644 ComponentCodelab/dependentlayout/src/main/java/com/huawei/dependentlayout/MyApplication.java create mode 100644 ComponentCodelab/dependentlayout/src/main/java/com/huawei/dependentlayout/slice/MainAbilitySlice.java create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/element/string.json create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/graphic/background_dependent_layout.xml create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/graphic/corner_bg_comment.xml create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/layout/dependent_layout.xml create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/media/collect_icon.jpg create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/media/icon.png create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/media/like_icon.jpg create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/media/message_icon.jpg create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/media/news_image.jpg create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/media/news_image_left.jpg create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/media/news_image_right.jpg create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/base/media/share_icon.jpg create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/en/element/string.json create mode 100644 ComponentCodelab/dependentlayout/src/main/resources/zh/element/string.json create mode 100644 ComponentCodelab/dependentlayout/src/ohosTest/java/com/huawei/dependentlayout/ExampleOhosTest.java create mode 100644 ComponentCodelab/dependentlayout/src/test/java/com/huawei/dependentlayout/ExampleTest.java create mode 100644 ComponentCodelab/directionallayout/build.gradle create mode 100644 ComponentCodelab/directionallayout/src/main/config.json create mode 100644 ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/MainAbility.java create mode 100644 ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/MyApplication.java create mode 100644 ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/slice/MainAbilitySlice.java create mode 100644 ComponentCodelab/directionallayout/src/main/resources/base/element/string.json create mode 100644 ComponentCodelab/directionallayout/src/main/resources/base/graphic/background_directional_layout.xml create mode 100644 ComponentCodelab/directionallayout/src/main/resources/base/layout/directional_layout.xml create mode 100644 ComponentCodelab/directionallayout/src/main/resources/base/media/icon.png create mode 100644 ComponentCodelab/directionallayout/src/main/resources/en/element/string.json create mode 100644 ComponentCodelab/directionallayout/src/main/resources/zh/element/string.json create mode 100644 ComponentCodelab/directionallayout/src/ohosTest/java/com/huawei/directionallayout/ExampleOhosTest.java create mode 100644 ComponentCodelab/directionallayout/src/test/java/com/huawei/directionallayout/ExampleTest.java create mode 100644 ComponentCodelab/listcontainer/build.gradle create mode 100644 ComponentCodelab/listcontainer/src/main/config.json create mode 100644 ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/MainAbility.java create mode 100644 ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/MyApplication.java create mode 100644 ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/provider/NewsInfo.java create mode 100644 ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/provider/NewsListProvider.java create mode 100644 ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/provider/NewsTypeProvider.java create mode 100644 ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/slice/MainAbilitySlice.java create mode 100644 ComponentCodelab/listcontainer/src/main/resources/base/element/string.json create mode 100644 ComponentCodelab/listcontainer/src/main/resources/base/graphic/background_ability_main.xml create mode 100644 ComponentCodelab/listcontainer/src/main/resources/base/layout/item_news_layout.xml create mode 100644 ComponentCodelab/listcontainer/src/main/resources/base/layout/item_news_type_layout.xml create mode 100644 ComponentCodelab/listcontainer/src/main/resources/base/layout/news_list_layout.xml create mode 100644 ComponentCodelab/listcontainer/src/main/resources/base/media/icon.png create mode 100644 ComponentCodelab/listcontainer/src/main/resources/base/media/news_image.jpg create mode 100644 ComponentCodelab/listcontainer/src/main/resources/base/media/news_image_left.jpg create mode 100644 ComponentCodelab/listcontainer/src/main/resources/base/media/news_image_right.jpg create mode 100644 ComponentCodelab/listcontainer/src/main/resources/en/element/string.json create mode 100644 ComponentCodelab/listcontainer/src/main/resources/zh/element/string.json create mode 100644 ComponentCodelab/listcontainer/src/ohosTest/java/com/huawei/cookbook/ExampleOhosTest.java create mode 100644 ComponentCodelab/listcontainer/src/test/java/com/huawei/cookbook/ExampleTest.java create mode 100644 ComponentCodelab/radiocontainer/build.gradle create mode 100644 ComponentCodelab/radiocontainer/src/main/config.json create mode 100644 ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/MainAbility.java create mode 100644 ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/MyApplication.java create mode 100644 ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/slice/MainAbilitySlice.java create mode 100644 ComponentCodelab/radiocontainer/src/main/resources/base/element/string.json create mode 100644 ComponentCodelab/radiocontainer/src/main/resources/base/graphic/background_radio_container.xml create mode 100644 ComponentCodelab/radiocontainer/src/main/resources/base/layout/radio_container.xml create mode 100644 ComponentCodelab/radiocontainer/src/main/resources/base/media/icon.png create mode 100644 ComponentCodelab/radiocontainer/src/main/resources/en/element/string.json create mode 100644 ComponentCodelab/radiocontainer/src/main/resources/zh/element/string.json create mode 100644 ComponentCodelab/radiocontainer/src/ohosTest/java/com/huawei/radiocontainer/ExampleOhosTest.java create mode 100644 ComponentCodelab/radiocontainer/src/test/java/com/huawei/radiocontainer/ExampleTest.java create mode 100644 ComponentCodelab/stacklayout/build.gradle create mode 100644 ComponentCodelab/stacklayout/src/main/config.json create mode 100644 ComponentCodelab/stacklayout/src/main/java/com/huawei/stacklayout/MainAbility.java create mode 100644 ComponentCodelab/stacklayout/src/main/java/com/huawei/stacklayout/MyApplication.java create mode 100644 ComponentCodelab/stacklayout/src/main/java/com/huawei/stacklayout/slice/MainAbilitySlice.java create mode 100644 ComponentCodelab/stacklayout/src/main/resources/base/element/string.json create mode 100644 ComponentCodelab/stacklayout/src/main/resources/base/graphic/background_stack_layout.xml create mode 100644 ComponentCodelab/stacklayout/src/main/resources/base/layout/stack_layout.xml create mode 100644 ComponentCodelab/stacklayout/src/main/resources/base/media/icon.png create mode 100644 ComponentCodelab/stacklayout/src/main/resources/en/element/string.json create mode 100644 ComponentCodelab/stacklayout/src/main/resources/zh/element/string.json create mode 100644 ComponentCodelab/stacklayout/src/ohosTest/java/com/huawei/stacklayout/ExampleOhosTest.java create mode 100644 ComponentCodelab/stacklayout/src/test/java/com/huawei/stacklayout/ExampleTest.java create mode 100644 ComponentCodelab/tablelayout/build.gradle create mode 100644 ComponentCodelab/tablelayout/src/main/config.json create mode 100644 ComponentCodelab/tablelayout/src/main/java/com/huawei/tablelayout/MainAbility.java create mode 100644 ComponentCodelab/tablelayout/src/main/java/com/huawei/tablelayout/MyApplication.java create mode 100644 ComponentCodelab/tablelayout/src/main/java/com/huawei/tablelayout/slice/MainAbilitySlice.java create mode 100644 ComponentCodelab/tablelayout/src/main/resources/base/element/string.json create mode 100644 ComponentCodelab/tablelayout/src/main/resources/base/graphic/background_table_layout.xml create mode 100644 ComponentCodelab/tablelayout/src/main/resources/base/graphic/button_element.xml create mode 100644 ComponentCodelab/tablelayout/src/main/resources/base/graphic/circle_button_element.xml create mode 100644 ComponentCodelab/tablelayout/src/main/resources/base/layout/table_layout.xml create mode 100644 ComponentCodelab/tablelayout/src/main/resources/base/media/icon.png create mode 100644 ComponentCodelab/tablelayout/src/main/resources/en/element/string.json create mode 100644 ComponentCodelab/tablelayout/src/main/resources/zh/element/string.json create mode 100644 ComponentCodelab/tablelayout/src/ohosTest/java/com/huawei/tablelayout/ExampleOhosTest.java create mode 100644 ComponentCodelab/tablelayout/src/test/java/com/huawei/tablelayout/ExampleTest.java create mode 100644 ComponentCodelab/tablist/build.gradle create mode 100644 ComponentCodelab/tablist/src/main/config.json create mode 100644 ComponentCodelab/tablist/src/main/java/com/huawei/cookbook/MainAbility.java create mode 100644 ComponentCodelab/tablist/src/main/java/com/huawei/cookbook/MyApplication.java create mode 100644 ComponentCodelab/tablist/src/main/java/com/huawei/cookbook/slice/MainAbilitySlice.java create mode 100644 ComponentCodelab/tablist/src/main/resources/base/element/string.json create mode 100644 ComponentCodelab/tablist/src/main/resources/base/graphic/background_ability_main.xml create mode 100644 ComponentCodelab/tablist/src/main/resources/base/layout/tab_list.xml create mode 100644 ComponentCodelab/tablist/src/main/resources/base/media/icon.png create mode 100644 ComponentCodelab/tablist/src/main/resources/en/element/string.json create mode 100644 ComponentCodelab/tablist/src/main/resources/zh/element/string.json create mode 100644 ComponentCodelab/tablist/src/ohosTest/java/com/huawei/cookbook/ExampleOhosTest.java create mode 100644 ComponentCodelab/tablist/src/test/java/com/huawei/cookbook/ExampleTest.java create mode 100644 StepsCard/LICENSE create mode 100644 StepsCard/README.md create mode 100644 StepsCard/RELEASE-NOTES.md create mode 100644 StepsCard/build.gradle create mode 100644 StepsCard/entry/.gitignore create mode 100644 StepsCard/entry/build.gradle create mode 100644 StepsCard/entry/src/main/config.json create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/MainAbility.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/MyApplication.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/StepFormAbility.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/StepSensorService.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/cardentity/ChartPoint.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/cardentity/ChartValues.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/cardentity/PointStyle.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/database/Form.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/database/FormDatabase.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/database/SensorData.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/slice/MainAbilitySlice.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/slice/StepFormAbilitySlice.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/utils/ChartDataUtils.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/utils/DatabaseUtils.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/utils/DateUtils.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/utils/LogUtils.java create mode 100644 StepsCard/entry/src/main/java/com/huawei/cookbook/utils/PermissionBridge.java create mode 100644 StepsCard/entry/src/main/js/card2X2/common/backgroud.jpg create mode 100644 StepsCard/entry/src/main/js/card2X2/pages/index/index.css create mode 100644 StepsCard/entry/src/main/js/card2X2/pages/index/index.hml create mode 100644 StepsCard/entry/src/main/js/card2X2/pages/index/index.js create mode 100644 StepsCard/entry/src/main/js/card2X4/common/backgroundImg1.JPG create mode 100644 StepsCard/entry/src/main/js/card2X4/common/step2.png create mode 100644 StepsCard/entry/src/main/js/card2X4/pages/index/index.css create mode 100644 StepsCard/entry/src/main/js/card2X4/pages/index/index.hml create mode 100644 StepsCard/entry/src/main/js/card2X4/pages/index/index.js create mode 100644 StepsCard/entry/src/main/resources/base/element/string.json create mode 100644 StepsCard/entry/src/main/resources/base/graphic/background_ability_main.xml create mode 100644 StepsCard/entry/src/main/resources/base/graphic/background_ability_step_form.xml create mode 100644 StepsCard/entry/src/main/resources/base/layout/ability_step_form.xml create mode 100644 StepsCard/entry/src/main/resources/base/layout/form_router_page.xml create mode 100644 StepsCard/entry/src/main/resources/base/media/form_image_with_info_steps_card_default_image_2.png create mode 100644 StepsCard/entry/src/main/resources/base/media/icon.png create mode 100644 StepsCard/gradle/wrapper/gradle-wrapper.jar create mode 100644 StepsCard/gradle/wrapper/gradle-wrapper.properties create mode 100644 StepsCard/settings.gradle diff --git a/ClockFACardDemo/LICENSE b/ClockFACardDemo/LICENSE new file mode 100644 index 00000000..80576ef1 --- /dev/null +++ b/ClockFACardDemo/LICENSE @@ -0,0 +1,78 @@ + Copyright (c) 2021 Huawei Device Co., Ltd. All rights reserved. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +Apache License, Version 2.0 +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. + +Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. + +Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. + +You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: +1.You must give any other recipients of the Work or Derivative Works a copy of this License; and +2.You must cause any modified files to carry prominent notices stating that You changed the files; and +3.You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and +4.If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + +You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. + +Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. + +This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. + +Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. + +In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. + +While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/ClockFACardDemo/README.md b/ClockFACardDemo/README.md new file mode 100644 index 00000000..28abd016 --- /dev/null +++ b/ClockFACardDemo/README.md @@ -0,0 +1,47 @@ +# ClockFACardDemo +简介 +• 本cookbook旨在使开发人员了解HarmonyOS中JAVA卡片的开发,包含卡片的创建、更新、删除功能,实现了时分秒,年月日,星期的实时刷新效果。 + +安装要求 +• 安装DevEco Studio +• 设置DevEco Studio开发环境。DevEco Studio开发环境需要连接到网络,以确保该正常使用。可以根据以下两种情况配置开发环境: + 1.如果您可以直接访问Internet,则只需下载HarmonyOS SDK + 2.如果网络无法直接访问Internet,则可以通过代理服务器进行访问 +• 生成密钥并申请证书 + +用户指南 +• 下载此项目 +• 打开HUAWEI DevEco Studio,单击File> Open选择此ComponentCodelab +• 单击Build> Build App(s)/Hap(s)>Build Debug Hap(s)以编译hap软件包 +• 单击Run> Run 'entry'以运行hap包 + +注意 +• 您可以选择在模拟器或真机上运行hap软件包。 +• 如果在真机上运行它,则需要在项目的File> Project Structure> Modules> Signing Configs中配置签名和证书信息。 + +许可 +请参阅LICENSE文件以获得更多信息。 + +What is it? +This cookbook is designed to enable developers to understand the development of Java cards in HarmonyOS, including the creation, update, and deletion of cards, and the real-time refresh effect of hour, second, year, month, day, and week. + +Installation requirements +• Install DevEco Studio +• Set up the DevEco Studio development environment.The DevEco Studio development environment needs to depend on the network environment. It needs to be connected to the network to ensure the normal use of the tool.The development environment can be configured according to the following two situations + 1.If you can directly access the Internet, just download the HarmonyOS SDK + 2.If the network cannot access the Internet directly, it can be accessed through a proxy server +• Generate secret key and apply for certificate + +User guide +• Download this Project +• Open HUAWEI DevEco Studio, click File> Open> Then select and open this Project +• Click Build> Build App(s)/Hap(s)>Build Debug Hap(s) to compile the hap package +• Click Run> Run 'entry' to run the hap package + +Note +• You can choose to run the hap package on the simulator or the phone. +• If you run it on the phone, you need to configure the signature and certificate information in the project's File> Project Structure> Modules> Signing Configs. + +Licensing +Please see LICENSE for more info. + diff --git a/ClockFACardDemo/RELEASE-NOTES.md b/ClockFACardDemo/RELEASE-NOTES.md new file mode 100644 index 00000000..ea23a13e --- /dev/null +++ b/ClockFACardDemo/RELEASE-NOTES.md @@ -0,0 +1,2 @@ +1.0.0 +1.Initial version \ No newline at end of file diff --git a/ClockFACardDemo/build.gradle b/ClockFACardDemo/build.gradle new file mode 100644 index 00000000..1ce01d82 --- /dev/null +++ b/ClockFACardDemo/build.gradle @@ -0,0 +1,36 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +apply plugin: 'com.huawei.ohos.app' + +ohos { + compileSdkVersion 5 + defaultConfig { + compatibleSdkVersion 4 + } +} + +buildscript { + repositories { + maven { + url 'https://repo.huaweicloud.com/repository/maven/' + } + maven { + url 'https://developer.huawei.com/repo/' + } + jcenter() + } + dependencies { + classpath 'com.huawei.ohos:hap:2.4.4.2' + } +} + +allprojects { + repositories { + maven { + url 'https://repo.huaweicloud.com/repository/maven/' + } + maven { + url 'https://developer.huawei.com/repo/' + } + jcenter() + } +} diff --git a/ClockFACardDemo/entry/.gitignore b/ClockFACardDemo/entry/.gitignore new file mode 100644 index 00000000..796b96d1 --- /dev/null +++ b/ClockFACardDemo/entry/.gitignore @@ -0,0 +1 @@ +/build diff --git a/ClockFACardDemo/entry/build.gradle b/ClockFACardDemo/entry/build.gradle new file mode 100644 index 00000000..90d8c89d --- /dev/null +++ b/ClockFACardDemo/entry/build.gradle @@ -0,0 +1,23 @@ +apply plugin: 'com.huawei.ohos.hap' +ohos { + compileSdkVersion 5 + defaultConfig { + compatibleSdkVersion 4 + } + buildTypes { + release { + proguardOpt { + proguardEnabled false + rulesFiles 'proguard-rules.pro' + } + } + } + compileOptions { annotationEnabled true } +} + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar', '*.har']) + implementation 'android.arch.persistence.room:runtime:1.1.1' + testCompile 'junit:junit:4.12' +} + diff --git a/ClockFACardDemo/entry/proguard-rules.pro b/ClockFACardDemo/entry/proguard-rules.pro new file mode 100644 index 00000000..f7666e47 --- /dev/null +++ b/ClockFACardDemo/entry/proguard-rules.pro @@ -0,0 +1 @@ +# config module specific ProGuard rules here. \ No newline at end of file diff --git a/ClockFACardDemo/entry/src/main/config.json b/ClockFACardDemo/entry/src/main/config.json new file mode 100644 index 00000000..a57e096e --- /dev/null +++ b/ClockFACardDemo/entry/src/main/config.json @@ -0,0 +1,84 @@ +{ + "app": { + "bundleName": "com.huawei.cookbook", + "vendor": "huawei", + "version": { + "code": 1000000, + "name": "1.0" + } + }, + "deviceConfig": { + "default": { + "keepAlive": true + } + }, + "module": { + "package": "com.huawei.cookbooks", + "name": ".MyApplication", + "mainAbility": "com.huawei.cookbooks.MainAbility", + "deviceType": [ + "default" + ], + "distro": { + "deliveryWithInstall": true, + "moduleName": "entry", + "moduleType": "entry" + }, + "abilities": [ + { + "skills": [ + { + "entities": [ + "entity.system.home" + ], + "actions": [ + "action.system.home" + ] + } + ], + "orientation": "unspecified", + "name": "com.huawei.cookbooks.MainAbility", + "icon": "$media:icon", + "description": "$string:mainability_description", + "label": "$string:app_name", + "type": "page", + "launchType": "singleton", + "formsEnabled": true, + "visible": true, + "forms": [ + { + "landscapeLayouts": [ + "$layout:form_image_with_info_date_card_2_2", + "$layout:form_image_with_info_date_card_2_4" + ], + "isDefault": true, + "scheduledUpdateTime": "10:30", + "defaultDimension": "2*2", + "name": "DateCard", + "description": "This is a form card", + "colorMode": "auto", + "type": "Java", + "supportDimensions": [ + "2*2", + "2*4" + ], + "portraitLayouts": [ + "$layout:form_image_with_info_date_card_2_2", + "$layout:form_image_with_info_date_card_2_4" + ], + "updateEnabled": true, + "updateDuration": 1, + "formVisibleNotify": true + } + ] + }, + { + "name": "com.huawei.cookbooks.TimerAbility", + "icon": "$media:icon", + "description": "$string:TimeAbility_description", + "type": "service", + "visible": false + } + ] + } +} \ No newline at end of file diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/MainAbility.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/MainAbility.java new file mode 100644 index 00000000..cdfa9f28 --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/MainAbility.java @@ -0,0 +1,115 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks; + +import com.huawei.cookbooks.database.Form; +import com.huawei.cookbooks.database.FormDatabase; +import com.huawei.cookbooks.slice.ClockCardSlice; +import com.huawei.cookbooks.utils.ComponentProviderUtils; +import com.huawei.cookbooks.utils.DatabaseUtils; + +import ohos.aafwk.ability.Ability; +import ohos.aafwk.ability.AbilitySlice; +import ohos.aafwk.ability.ProviderFormInfo; +import ohos.aafwk.content.Intent; +import ohos.aafwk.content.Operation; +import ohos.agp.components.ComponentProvider; +import ohos.data.DatabaseHelper; +import ohos.data.orm.OrmContext; +import ohos.hiviewdfx.HiLog; +import ohos.hiviewdfx.HiLogLabel; + +/** + * Card Main Ability + */ +public class MainAbility extends Ability { + private static final HiLogLabel LABEL_LOG = new HiLogLabel(0, 0, "com.huawei.cookbooks.MainAbility"); + private static final int DEFAULT_DIMENSION_2X2 = 2; + private static final int DEFAULT_DIMENSION_2X4 = 3; + private static final String EMPTY_STRING = ""; + private static final int INVALID_FORM_ID = -1; + private long formId; + private ProviderFormInfo formInfo; + private DatabaseHelper helper = new DatabaseHelper(this); + private OrmContext connect; + + @Override + public void onStart(Intent intent) { + super.onStart(intent); + connect = helper.getOrmContext("FormDatabase", "FormDatabase.db", FormDatabase.class); + // 启动TimerAbility + Intent intentService = new Intent(); + Operation operation = + new Intent.OperationBuilder() + .withDeviceId("") + .withBundleName(getBundleName()) + .withAbilityName(TimerAbility.class.getName()) + .build(); + intentService.setOperation(operation); + startAbility(intentService); + super.setMainRoute(ClockCardSlice.class.getName()); + } + + @Override + protected ProviderFormInfo onCreateForm(Intent intent) { + if (intent == null) { + return new ProviderFormInfo(); + } + // 获取卡片id + formId = INVALID_FORM_ID; + if (intent.hasParameter(AbilitySlice.PARAM_FORM_IDENTITY_KEY)) { + formId = intent.getLongParam(AbilitySlice.PARAM_FORM_IDENTITY_KEY, INVALID_FORM_ID); + } else { + return new ProviderFormInfo(); + } + // 获取卡片名称 + String formName = EMPTY_STRING; + if (intent.hasParameter(AbilitySlice.PARAM_FORM_NAME_KEY)) { + formName = intent.getStringParam(AbilitySlice.PARAM_FORM_NAME_KEY); + } + // 获取卡片规格 + int dimension = DEFAULT_DIMENSION_2X2; + if (intent.hasParameter(AbilitySlice.PARAM_FORM_DIMENSION_KEY)) { + dimension = intent.getIntParam(AbilitySlice.PARAM_FORM_DIMENSION_KEY, DEFAULT_DIMENSION_2X2); + } + int layoutId = ResourceTable.Layout_form_image_with_info_date_card_2_2; + if (dimension == DEFAULT_DIMENSION_2X4) { + layoutId = ResourceTable.Layout_form_image_with_info_date_card_2_4; + } + formInfo = new ProviderFormInfo(layoutId, this); + // 存储卡片信息 + Form form = new Form(formId, formName, dimension); + ComponentProvider componentProvider = ComponentProviderUtils.getComponentProvider(form, this); + formInfo.mergeActions(componentProvider); + if (connect == null) { + connect = + helper.getOrmContext("FormDatabase", "FormDatabase.db", FormDatabase.class); + } + try { + DatabaseUtils.insertForm(form, connect); + } catch (Exception e) { + DatabaseUtils.deleteFormData(form.getFormId(), connect); + } + return formInfo; + } + + @Override + protected void onDeleteForm(long formId) { + super.onDeleteForm(formId); + // 删除数据库中的卡片信息 + DatabaseUtils.deleteFormData(formId, connect); + } +} diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/MyApplication.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/MyApplication.java new file mode 100644 index 00000000..f85d694a --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/MyApplication.java @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks; + +import ohos.aafwk.ability.AbilityPackage; + +/** + * MyApplication + */ +public class MyApplication extends AbilityPackage { + @Override + public void onInitialize() { + super.onInitialize(); + } +} diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/TimerAbility.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/TimerAbility.java new file mode 100644 index 00000000..22a00dbc --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/TimerAbility.java @@ -0,0 +1,102 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks; + +import com.huawei.cookbooks.database.Form; +import com.huawei.cookbooks.database.FormDatabase; +import com.huawei.cookbooks.utils.ComponentProviderUtils; +import com.huawei.cookbooks.utils.DatabaseUtils; + +import ohos.aafwk.ability.Ability; +import ohos.aafwk.ability.FormException; +import ohos.aafwk.content.Intent; +import ohos.agp.components.ComponentProvider; +import ohos.data.DatabaseHelper; +import ohos.data.orm.OrmContext; +import ohos.data.orm.OrmPredicates; +import ohos.hiviewdfx.HiLog; +import ohos.hiviewdfx.HiLogLabel; +import ohos.rpc.IRemoteObject; + +import java.util.List; +import java.util.Timer; +import java.util.TimerTask; + +/** + * Time PA + */ +public class TimerAbility extends Ability { + private static final HiLogLabel LABEL_LOG = new HiLogLabel(3, 0xD001100, "Demo"); + private static final long SEND_PERIOD = 1000L; + private DatabaseHelper helper = new DatabaseHelper(this); + private OrmContext connect; + + @Override + public void onStart(Intent intent) { + HiLog.info(LABEL_LOG, "TimerAbility::onStart"); + connect = helper.getOrmContext("FormDatabase", "FormDatabase.db", FormDatabase.class); + startTimer(); + super.onStart(intent); + } + + // 卡片更新定时器,每秒更新一次 + private void startTimer() { + Timer timer = new Timer(); + timer.schedule( + new TimerTask() { + @Override + public void run() { + updateForms(); + } + }, + 0, + SEND_PERIOD); + } + + private void updateForms() { + // 从数据库中获取卡片信息 + OrmPredicates ormPredicates = new OrmPredicates(Form.class); + List
formList = connect.query(ormPredicates); + // 更新时分秒 + if (formList.size() <= 0) { + return; + } + for (Form form : formList) { + // 遍历卡片列表更新卡片 + ComponentProvider componentProvider = ComponentProviderUtils.getComponentProvider(form, this); + try { + Long updateFormId = form.getFormId(); + updateForm(updateFormId, componentProvider); + } catch (FormException e) { + // 删除不存在的卡片 + DatabaseUtils.deleteFormData(form.getFormId(), connect); + HiLog.error(LABEL_LOG, "onUpdateForm updateForm error"); + } + } + } + + @Override + public void onBackground() { + super.onBackground(); + HiLog.info(LABEL_LOG, "TimerAbility::onBackground"); + } + + @Override + public void onStop() { + super.onStop(); + HiLog.info(LABEL_LOG, "TimerAbility::onStop"); + } +} diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/database/Form.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/database/Form.java new file mode 100644 index 00000000..64c77fb6 --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/database/Form.java @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks.database; + +import ohos.data.orm.OrmObject; +import ohos.data.orm.annotation.Entity; +import ohos.data.orm.annotation.PrimaryKey; + +/** + * Card Table + */ +@Entity(tableName = "form") +public class Form extends OrmObject { + @PrimaryKey() + private Long formId; + private String formName; + private Integer dimension; + + public Form(Long formId, String formName, Integer dimension) { + this.formId = formId; + this.formName = formName; + this.dimension = dimension; + } + + public Form() { } + + public Integer getDimension() { + return dimension; + } + + public void setDimension(Integer dimension) { + this.dimension = dimension; + } + + public Long getFormId() { + return formId; + } + + public void setFormId(Long formId) { + this.formId = formId; + } + + public String getFormName() { + return formName; + } + + public void setFormName(String formName) { + this.formName = formName; + } +} diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/database/FormDatabase.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/database/FormDatabase.java new file mode 100644 index 00000000..b69fc36b --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/database/FormDatabase.java @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks.database; + +import ohos.data.orm.OrmDatabase; +import ohos.data.orm.annotation.Database; + +/** + * Card Database + */ +@Database( + entities = {Form.class}, + version = 1) +public abstract class FormDatabase extends OrmDatabase { } diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/slice/ClockCardSlice.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/slice/ClockCardSlice.java new file mode 100644 index 00000000..26a1d8d9 --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/slice/ClockCardSlice.java @@ -0,0 +1,172 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks.slice; + +import com.huawei.cookbooks.ResourceTable; +import com.huawei.cookbooks.utils.ComponentProviderUtils; +import com.huawei.cookbooks.utils.DateUtils; +import com.huawei.cookbooks.utils.LogUtils; + +import ohos.aafwk.ability.AbilitySlice; +import ohos.aafwk.content.Intent; +import ohos.agp.components.Component; +import ohos.agp.components.Text; +import ohos.agp.utils.Color; +import ohos.eventhandler.EventHandler; +import ohos.eventhandler.EventRunner; +import ohos.eventhandler.InnerEvent; +import ohos.hiviewdfx.HiLogLabel; + +import java.util.Calendar; +import java.util.Timer; +import java.util.TimerTask; + +/** + * Clock Card Slice + */ +public class ClockCardSlice extends AbilitySlice { + private static final HiLogLabel LABEL_LOG = new HiLogLabel(0, 0, ClockCardSlice.class.getName()); + private static final long SEND_PERIOD = 1000L; + private static final int COLOR_RGB = 192; + private static final int TIME_LENGTH = 2; + private Text dateText; + private Text hourText; + private Text minText; + private Text secondText; + private EventRunner runner; + private MyEventHandle myEventHandle; + private AbilitySlice slice = this; + private Timer timer; + private Runnable runnable = new Runnable() { + private void initHandler() { + runner = EventRunner.getMainEventRunner(); + if (runner == null) { + return; + } + myEventHandle = new MyEventHandle(runner); + } + + @Override + public void run() { + // 初始化认证对象 + initHandler(); + } + }; + + @Override + public void onStart(Intent intent) { + super.onStart(intent); + super.setUIContent(ResourceTable.Layout_form_image_with_info_date_card_2_2); + initComponent(); + startTimer(); + } + + private void startTimer() { + timer = new Timer(); + timer.schedule( + new TimerTask() { + @Override + public void run() { + runnable.run(); + myEventHandle.sendEvent(1); + } + }, + 0, + SEND_PERIOD); + } + + /** + * Init Component + */ + private void initComponent() { + Calendar now = Calendar.getInstance(); + Component dateComponent = slice.findComponentById(ResourceTable.Id_date); + if (dateComponent != null && dateComponent instanceof Text) { + dateText = (Text) dateComponent; + dateText.setText(DateUtils.getCurrentDate("yyyy-MM-dd")); + } + Component hourComponent = slice.findComponentById(ResourceTable.Id_hour); + if (hourComponent != null && hourComponent instanceof Text) { + hourText = (Text) hourComponent; + int hour = now.get(Calendar.HOUR_OF_DAY); + setTextValue(hour, hourText); + } + Component minComponent = findComponentById(ResourceTable.Id_min); + if (minComponent != null && minComponent instanceof Text) { + minText = (Text) minComponent; + int min = now.get(Calendar.MINUTE); + setTextValue(min, minText); + } + Component secComponent = findComponentById(ResourceTable.Id_sec); + if (secComponent != null && secComponent instanceof Text) { + secondText = (Text) secComponent; + int second = now.get(Calendar.SECOND); + setTextValue(second, secondText); + } + int weekId = ComponentProviderUtils.getWeekDayId(); + Component weekComponent = slice.findComponentById(weekId); + if (weekComponent != null && weekComponent instanceof Text) { + Text week = (Text) weekComponent; + week.setTextColor(new Color(Color.rgb(0, 0, 0))); + } + int lastWeekDayId = ComponentProviderUtils.getLastWeekDayId(); + Component lastWeekComponent = slice.findComponentById(lastWeekDayId); + if (weekComponent != null && lastWeekComponent instanceof Text) { + Text lastWeek = (Text) lastWeekComponent; + lastWeek.setTextColor(new Color(Color.rgb(COLOR_RGB, COLOR_RGB, COLOR_RGB))); + } + } + + private void setTextValue(int now, Text text) { + if (String.valueOf(now).length() < TIME_LENGTH) { + text.setText("0" + now); + } else { + text.setText(now + ""); + } + } + + @Override + public void onActive() { + super.onActive(); + } + + @Override + public void onForeground(Intent intent) { + super.onForeground(intent); + } + + private class MyEventHandle extends EventHandler { + MyEventHandle(EventRunner runner) throws IllegalArgumentException { + super(runner); + } + + @Override + protected void processEvent(InnerEvent event) { + super.processEvent(event); + int eventId = event.eventId; + if (eventId == 1) { + // 更新页面 + initComponent(); + } + } + } + + @Override + protected void onStop() { + LogUtils.info("onStop", " start to destroy slice"); + timer.cancel(); + } +} diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/ComponentProviderUtils.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/ComponentProviderUtils.java new file mode 100644 index 00000000..3ae843ac --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/ComponentProviderUtils.java @@ -0,0 +1,173 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks.utils; + +import com.huawei.cookbooks.ResourceTable; +import com.huawei.cookbooks.database.Form; + +import ohos.agp.components.ComponentProvider; +import ohos.agp.utils.Color; +import ohos.app.Context; + +import java.util.Calendar; + +/** + * Component ProviderUtils + */ +public class ComponentProviderUtils { + // 当前星期颜色 + private static Color nowWeekColor = new Color(Color.rgb(255, 245, 238)); + + // 原色星期 + private static Color primaryWeekColor = new Color(Color.rgb(192, 192, 192)); + + private static final int WEEK_DAYS = 7; + private static final int STRING_LENGTH = 2; + private static final int DIM_VERSION = 3; + private static final int SUNDAY = 1; + private static final int MONDAY = 2; + private static final int TUESDAY = 3; + private static final int WEDNESDAY = 4; + private static final int THURSDAY = 5; + private static final int FRIDAY = 6; + private static final int SATURDAY = 7; + + /** + * Obtain the day of the week + * + * @return week + */ + public static int getWeekDayId() { + Calendar calendar = Calendar.getInstance(); + int week = calendar.get(Calendar.DAY_OF_WEEK); + int result = getWeekIdResult(week); + return result; + } + + /** + * get week component id + * + * @param week week + * @return component id + */ + private static int getWeekIdResult(int week) { + int result = ResourceTable.Id_mon; + switch (week) { + case SUNDAY: + result = ResourceTable.Id_sun; + break; + case MONDAY: + result = ResourceTable.Id_mon; + break; + case TUESDAY: + result = ResourceTable.Id_tue; + break; + case WEDNESDAY: + result = ResourceTable.Id_wed; + break; + case THURSDAY: + result = ResourceTable.Id_thu; + break; + case FRIDAY: + result = ResourceTable.Id_fri; + break; + case SATURDAY: + result = ResourceTable.Id_sat; + break; + default: + result = ResourceTable.Id_sun; + break; + } + return result; + } + + /** + * Obtains the ComponentProvider object + * + * @param form form info + * @param context context + * @return component provider + */ + public static ComponentProvider getComponentProvider(Form form, Context context) { + int layoutId = ResourceTable.Layout_form_image_with_info_date_card_2_2; + if (form.getDimension() == DIM_VERSION) { + layoutId = ResourceTable.Layout_form_image_with_info_date_card_2_4; + } + ComponentProvider componentProvider = new ComponentProvider(layoutId, context); + setComponentProviderValue(componentProvider); + return componentProvider; + } + + /** + * Time converted to string + * + * @param time time + * @return time string + */ + private static String int2String(int time) { + String timeString; + if (String.valueOf(time).length() < STRING_LENGTH) { + timeString = "0" + time; + } else { + timeString = time + ""; + } + return timeString; + } + + /** + * Set the value of componentProvider + * + * @param componentProvider component provider + */ + private static void setComponentProviderValue(ComponentProvider componentProvider) { + Calendar now = Calendar.getInstance(); + int hour = now.get(Calendar.HOUR_OF_DAY); + int min = now.get(Calendar.MINUTE); + int second = now.get(Calendar.SECOND); + String hourString = int2String(hour); + String minString = int2String(min); + String secondString = int2String(second); + componentProvider.setText(ResourceTable.Id_date, DateUtils.getCurrentDate("yyyy-MM-dd")); + componentProvider.setText(ResourceTable.Id_hour, hourString); + componentProvider.setText(ResourceTable.Id_min, minString); + componentProvider.setText(ResourceTable.Id_sec, secondString); + + // 获取当前星期 + int weekDayId = getWeekDayId(); + componentProvider.setTextColor(weekDayId, nowWeekColor); + + // 将前一天的星期改回原色 + int lastWeekId = getLastWeekDayId(); + componentProvider.setTextColor(lastWeekId, primaryWeekColor); + } + + /** + * obtain previous day of the week + * + * @return previous day of the week + */ + public static int getLastWeekDayId() { + Calendar calendar = Calendar.getInstance(); + int week = calendar.get(Calendar.DAY_OF_WEEK); + int lastWeek; + if (week == 1) { + lastWeek = WEEK_DAYS; + } else { + lastWeek = week - 1; + } + return getWeekIdResult(lastWeek); + } +} diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/DatabaseUtils.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/DatabaseUtils.java new file mode 100644 index 00000000..1c1d5238 --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/DatabaseUtils.java @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks.utils; + +import com.huawei.cookbooks.database.Form; + +import ohos.data.orm.OrmContext; +import ohos.data.orm.OrmPredicates; + +import java.util.List; + +/** + * Card Database Operations + */ +public class DatabaseUtils { + /** + * delete data + * + * @param formId form id + * @param connect data connection + */ + public static void deleteFormData(long formId, OrmContext connect) { + OrmPredicates where = connect.where(Form.class); + where.equalTo("formId", formId); + List query = connect.query(where); + if (!query.isEmpty()) { + connect.delete(query.get(0)); + connect.flush(); + } + } + + /** + * add card info + * + * @param form card object + * @param connect data connection + */ + public static void insertForm(Form form, OrmContext connect) { + connect.insert(form); + connect.flush(); + } +} diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/DateUtils.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/DateUtils.java new file mode 100644 index 00000000..b333f12f --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/DateUtils.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks.utils; + +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.Date; + +/** + * Date time util + */ +public class DateUtils { + /** + * current time + * + * @param format format + * @return corresponding format string + */ + public static String getCurrentDate(String format) { + DateFormat dateFormat = new SimpleDateFormat(format); + Date date = new Date(); + String formatDate = dateFormat.format(date); + return formatDate; + } +} diff --git a/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/LogUtils.java b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/LogUtils.java new file mode 100644 index 00000000..baaea54d --- /dev/null +++ b/ClockFACardDemo/entry/src/main/java/com/huawei/cookbooks/utils/LogUtils.java @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbooks.utils; + +import ohos.hiviewdfx.HiLog; +import ohos.hiviewdfx.HiLogLabel; + +/** + * LogUtils + */ +public class LogUtils { + private static final String TAG_LOG = "LogUtil"; + + private static final HiLogLabel LABEL_LOG = new HiLogLabel(0, 0, LogUtils.TAG_LOG); + + private static final String LOG_FORMAT = "%{public}s: %{public}s"; + + private LogUtils() { } + + /** + * Print debug log + * + * @param tag log tag + * @param msg log message + */ + public static void debug(String tag, String msg) { + HiLog.debug(LABEL_LOG, LOG_FORMAT, tag, msg); + } + + /** + * Print info log + * + * @param tag log tag + * @param msg log message + */ + public static void info(String tag, String msg) { + HiLog.info(LABEL_LOG, LOG_FORMAT, tag, msg); + } + + /** + * Print warn log + * + * @param tag log tag + * @param msg log message + */ + public static void warn(String tag, String msg) { + HiLog.warn(LABEL_LOG, LOG_FORMAT, tag, msg); + } + + /** + * Print error log + * + * @param tag log tag + * @param msg log message + */ + public static void error(String tag, String msg) { + HiLog.error(LABEL_LOG, LOG_FORMAT, tag, msg); + } +} diff --git a/ClockFACardDemo/entry/src/main/resources/base/element/string.json b/ClockFACardDemo/entry/src/main/resources/base/element/string.json new file mode 100644 index 00000000..de56bc1f --- /dev/null +++ b/ClockFACardDemo/entry/src/main/resources/base/element/string.json @@ -0,0 +1,20 @@ +{ + "string": [ + { + "name": "app_name", + "value": "ClockCard" + }, + { + "name": "mainability_description", + "value": "Java_Phone_Empty Feature Ability" + }, + { + "name": "HelloWorld", + "value": "Hello World" + }, + { + "name": "TimeAbility_description", + "value": "hap sample empty service" + } + ] +} \ No newline at end of file diff --git a/ClockFACardDemo/entry/src/main/resources/base/graphic/background_ability_main.xml b/ClockFACardDemo/entry/src/main/resources/base/graphic/background_ability_main.xml new file mode 100644 index 00000000..c0c0a3df --- /dev/null +++ b/ClockFACardDemo/entry/src/main/resources/base/graphic/background_ability_main.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/ClockFACardDemo/entry/src/main/resources/base/layout/ability_main.xml b/ClockFACardDemo/entry/src/main/resources/base/layout/ability_main.xml new file mode 100644 index 00000000..adab58cd --- /dev/null +++ b/ClockFACardDemo/entry/src/main/resources/base/layout/ability_main.xml @@ -0,0 +1,17 @@ + + + + + \ No newline at end of file diff --git a/ClockFACardDemo/entry/src/main/resources/base/layout/form_image_with_info_date_card_2_2.xml b/ClockFACardDemo/entry/src/main/resources/base/layout/form_image_with_info_date_card_2_2.xml new file mode 100644 index 00000000..679a3a2d --- /dev/null +++ b/ClockFACardDemo/entry/src/main/resources/base/layout/form_image_with_info_date_card_2_2.xml @@ -0,0 +1,203 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ClockFACardDemo/entry/src/main/resources/base/layout/form_image_with_info_date_card_2_4.xml b/ClockFACardDemo/entry/src/main/resources/base/layout/form_image_with_info_date_card_2_4.xml new file mode 100644 index 00000000..c97b3f31 --- /dev/null +++ b/ClockFACardDemo/entry/src/main/resources/base/layout/form_image_with_info_date_card_2_4.xml @@ -0,0 +1,216 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ClockFACardDemo/entry/src/main/resources/base/media/form_image_with_info_datecard_default_image_2.png b/ClockFACardDemo/entry/src/main/resources/base/media/form_image_with_info_datecard_default_image_2.png new file mode 100644 index 0000000000000000000000000000000000000000..64d3f425041c3dc993e82b45f1f5e7c56804db70 GIT binary patch literal 6244 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 literal 0 HcmV?d00001 diff --git a/ClockFACardDemo/entry/src/main/resources/base/media/form_image_with_info_form_card_default_image_2.png b/ClockFACardDemo/entry/src/main/resources/base/media/form_image_with_info_form_card_default_image_2.png new file mode 100644 index 0000000000000000000000000000000000000000..64d3f425041c3dc993e82b45f1f5e7c56804db70 GIT binary patch literal 6244 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 literal 0 HcmV?d00001 diff --git a/ClockFACardDemo/entry/src/main/resources/base/media/icon.png b/ClockFACardDemo/entry/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c GIT binary patch literal 6790 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 literal 0 HcmV?d00001 diff --git a/ClockFACardDemo/gradle/wrapper/gradle-wrapper.properties b/ClockFACardDemo/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 00000000..f59159e8 --- /dev/null +++ b/ClockFACardDemo/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://repo.huaweicloud.com/gradle/gradle-6.3-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/ClockFACardDemo/settings.gradle b/ClockFACardDemo/settings.gradle new file mode 100644 index 00000000..4773db73 --- /dev/null +++ b/ClockFACardDemo/settings.gradle @@ -0,0 +1 @@ +include ':entry' diff --git a/ComponentCodelab/LICENSE b/ComponentCodelab/LICENSE index 7c357dc8..80576ef1 100644 --- a/ComponentCodelab/LICENSE +++ b/ComponentCodelab/LICENSE @@ -1,10 +1,10 @@ - Copyright (c) 2021 Huawei Device Co., Ltd. + Copyright (c) 2021 Huawei Device Co., Ltd. All rights reserved. - Licensed under the Apache License,Version 2.0 (the "License"); + Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, diff --git a/ComponentCodelab/build.gradle b/ComponentCodelab/build.gradle index 0cdb1590..1cad0050 100644 --- a/ComponentCodelab/build.gradle +++ b/ComponentCodelab/build.gradle @@ -19,7 +19,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.huawei.ohos:hap:2.4.2.7' + classpath 'com.huawei.ohos:hap:2.4.4.2' classpath 'com.huawei.ohos:decctest:1.0.0.7' } } diff --git a/ComponentCodelab/checkbox/build.gradle b/ComponentCodelab/checkbox/build.gradle new file mode 100644 index 00000000..66c5259e --- /dev/null +++ b/ComponentCodelab/checkbox/build.gradle @@ -0,0 +1,28 @@ +apply plugin: 'com.huawei.ohos.hap' +apply plugin: 'com.huawei.ohos.decctest' +//For instructions on signature configuration, see https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide_debug_device-0000001053822404#ZH-CN_TOPIC_0000001154985555__section1112183053510 +ohos { + compileSdkVersion 5 + defaultConfig { + compatibleSdkVersion 5 + } + buildTypes { + release { + proguardOpt { + proguardEnabled false + rulesFiles 'proguard-rules.pro' + } + } + } + entryModules "entry" +} + +dependencies { + entryImplementation project(':entry') + implementation fileTree(dir: 'libs', include: ['*.jar', '*.har']) + testImplementation 'junit:junit:4.13' + ohosTestImplementation 'com.huawei.ohos.testkit:runner:1.0.0.100' +} +decc { + supportType = ['html', 'xml'] +} diff --git a/ComponentCodelab/checkbox/src/main/config.json b/ComponentCodelab/checkbox/src/main/config.json new file mode 100644 index 00000000..d1f52641 --- /dev/null +++ b/ComponentCodelab/checkbox/src/main/config.json @@ -0,0 +1,37 @@ +{ + "app": { + "bundleName": "com.huawei.cookbook", + "vendor": "huawei", + "version": { + "code": 1000000, + "name": "1.0.0" + } + }, + "deviceConfig": {}, + "module": { + "package": "com.huawei.checkbox", + "name": ".MyApplication", + "mainAbility": "com.huawei.checkbox.MainAbility", + "deviceType": [ + "phone" + ], + "distro": { + "deliveryWithInstall": true, + "moduleName": "checkbox", + "moduleType": "feature", + "installationFree": false + }, + "abilities": [ + { + "orientation": "unspecified", + "visible": true, + "name": "com.huawei.checkbox.MainAbility", + "icon": "$media:icon", + "description": "$string:mainability_description", + "label": "$string:checkbox_MainAbility", + "type": "page", + "launchType": "standard" + } + ] + } +} \ No newline at end of file diff --git a/ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/MainAbility.java b/ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/MainAbility.java new file mode 100644 index 00000000..c57f73e6 --- /dev/null +++ b/ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/MainAbility.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.checkbox; + +import com.huawei.checkbox.slice.MainAbilitySlice; + +import ohos.aafwk.ability.Ability; +import ohos.aafwk.content.Intent; + +/** + * MainAbility + */ +public class MainAbility extends Ability { + @Override + public void onStart(Intent intent) { + super.onStart(intent); + super.setMainRoute(MainAbilitySlice.class.getName()); + } +} diff --git a/ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/MyApplication.java b/ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/MyApplication.java new file mode 100644 index 00000000..0a6676c5 --- /dev/null +++ b/ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/MyApplication.java @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.checkbox; + +import ohos.aafwk.ability.AbilityPackage; + +/** + * MyApplication + */ +public class MyApplication extends AbilityPackage { + @Override + public void onInitialize() { + super.onInitialize(); + } +} diff --git a/ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/slice/MainAbilitySlice.java b/ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/slice/MainAbilitySlice.java new file mode 100644 index 00000000..756ef1b4 --- /dev/null +++ b/ComponentCodelab/checkbox/src/main/java/com/huawei/checkbox/slice/MainAbilitySlice.java @@ -0,0 +1,120 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.checkbox.slice; + +import com.huawei.checkbox.ResourceTable; + +import ohos.aafwk.ability.AbilitySlice; +import ohos.aafwk.content.Intent; +import ohos.agp.colors.RgbPalette; +import ohos.agp.components.Checkbox; +import ohos.agp.components.ComponentState; +import ohos.agp.components.Text; +import ohos.agp.components.element.ShapeElement; +import ohos.agp.components.element.StateElement; + +import java.util.HashSet; +import java.util.Set; + +/** + * MainAbilitySlice + */ +public class MainAbilitySlice extends AbilitySlice { + private Text answer; + private Set selectedSet = new HashSet<>(); + + @Override + public void onStart(Intent intent) { + super.onStart(intent); + super.setUIContent(ResourceTable.Layout_checkbox); + answer = (Text) findComponentById(ResourceTable.Id_text_answer); + initCheckbox(); + } + + // 获取Checkbox的背景 + private StateElement getStateElement() { + ShapeElement elementButtonOn = new ShapeElement(); + elementButtonOn.setRgbColor(RgbPalette.RED); + elementButtonOn.setShape(ShapeElement.OVAL); + + ShapeElement elementButtonOff = new ShapeElement(); + elementButtonOff.setRgbColor(RgbPalette.WHITE); + elementButtonOff.setShape(ShapeElement.OVAL); + + StateElement checkElement = new StateElement(); + checkElement.addState(new int[]{ComponentState.COMPONENT_STATE_CHECKED}, elementButtonOn); + checkElement.addState(new int[]{ComponentState.COMPONENT_STATE_EMPTY}, elementButtonOff); + return checkElement; + } + + // 订阅Checkbox状态变化 + private void setCheckedStateChangedListener(Checkbox checkbox, String checkValue) { + checkbox.setCheckedStateChangedListener((view, state) -> { + if (state) { + selectedSet.add(checkValue); + } else { + selectedSet.remove(checkValue); + } + showAnswer(); + }); + } + + // 初始化Checkbox并设置订阅事件 + private void initCheckbox() { + Checkbox checkbox1 = (Checkbox) findComponentById(ResourceTable.Id_checkbox_1); + checkbox1.setButtonElement(getStateElement()); + setCheckedStateChangedListener(checkbox1, "A"); + if (checkbox1.isChecked()) { + selectedSet.add("A"); + } + + Checkbox checkbox2 = (Checkbox) findComponentById(ResourceTable.Id_checkbox_2); + checkbox2.setButtonElement(getStateElement()); + setCheckedStateChangedListener(checkbox2, "B"); + if (checkbox2.isChecked()) { + selectedSet.add("B"); + } + + Checkbox checkbox3 = (Checkbox) findComponentById(ResourceTable.Id_checkbox_3); + checkbox3.setButtonElement(getStateElement()); + setCheckedStateChangedListener(checkbox3, "C"); + if (checkbox3.isChecked()) { + selectedSet.add("C"); + } + + Checkbox checkbox4 = (Checkbox) findComponentById(ResourceTable.Id_checkbox_4); + checkbox4.setButtonElement(getStateElement()); + setCheckedStateChangedListener(checkbox4, "D"); + if (checkbox4.isChecked()) { + selectedSet.add("D"); + } + } + + private void showAnswer() { + String select = selectedSet.toString(); + answer.setText(select); + } + + @Override + public void onActive() { + super.onActive(); + } + + @Override + public void onForeground(Intent intent) { + super.onForeground(intent); + } +} diff --git a/ComponentCodelab/checkbox/src/main/resources/base/element/string.json b/ComponentCodelab/checkbox/src/main/resources/base/element/string.json new file mode 100644 index 00000000..f4542ca0 --- /dev/null +++ b/ComponentCodelab/checkbox/src/main/resources/base/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "checkbox_MainAbility", + "value": "checkbox_MainAbility" + }, + { + "name": "mainability_description", + "value": "Java_Empty Ability" + }, + { + "name": "mainability_HelloWorld", + "value": "Hello World" + } + ] +} \ No newline at end of file diff --git a/ComponentCodelab/checkbox/src/main/resources/base/graphic/background_checkbox.xml b/ComponentCodelab/checkbox/src/main/resources/base/graphic/background_checkbox.xml new file mode 100644 index 00000000..c0c0a3df --- /dev/null +++ b/ComponentCodelab/checkbox/src/main/resources/base/graphic/background_checkbox.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/ComponentCodelab/checkbox/src/main/resources/base/layout/checkbox.xml b/ComponentCodelab/checkbox/src/main/resources/base/layout/checkbox.xml new file mode 100644 index 00000000..45ff7f9f --- /dev/null +++ b/ComponentCodelab/checkbox/src/main/resources/base/layout/checkbox.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/ComponentCodelab/checkbox/src/main/resources/base/media/icon.png b/ComponentCodelab/checkbox/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c GIT binary patch literal 6790 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 + + + \ No newline at end of file diff --git a/ComponentCodelab/datepicker/src/main/resources/base/graphic/button_element.xml b/ComponentCodelab/datepicker/src/main/resources/base/graphic/button_element.xml new file mode 100644 index 00000000..ba40e3d5 --- /dev/null +++ b/ComponentCodelab/datepicker/src/main/resources/base/graphic/button_element.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/ComponentCodelab/datepicker/src/main/resources/base/layout/data_picker.xml b/ComponentCodelab/datepicker/src/main/resources/base/layout/data_picker.xml new file mode 100644 index 00000000..40026333 --- /dev/null +++ b/ComponentCodelab/datepicker/src/main/resources/base/layout/data_picker.xml @@ -0,0 +1,46 @@ + + + + + + + + + + \ No newline at end of file diff --git a/ComponentCodelab/datepicker/src/main/resources/base/media/icon.png b/ComponentCodelab/datepicker/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c GIT binary patch literal 6790 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 + + + \ No newline at end of file diff --git a/ComponentCodelab/dependentlayout/src/main/resources/base/graphic/corner_bg_comment.xml b/ComponentCodelab/dependentlayout/src/main/resources/base/graphic/corner_bg_comment.xml new file mode 100644 index 00000000..149c407f --- /dev/null +++ b/ComponentCodelab/dependentlayout/src/main/resources/base/graphic/corner_bg_comment.xml @@ -0,0 +1,8 @@ + + + + + diff --git a/ComponentCodelab/dependentlayout/src/main/resources/base/layout/dependent_layout.xml b/ComponentCodelab/dependentlayout/src/main/resources/base/layout/dependent_layout.xml new file mode 100644 index 00000000..791341b0 --- /dev/null +++ b/ComponentCodelab/dependentlayout/src/main/resources/base/layout/dependent_layout.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ComponentCodelab/dependentlayout/src/main/resources/base/media/collect_icon.jpg b/ComponentCodelab/dependentlayout/src/main/resources/base/media/collect_icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cb4f79918a73b6510056d372ee296a160140234d GIT binary patch literal 9979 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 BV^IJA literal 0 HcmV?d00001 diff --git a/ComponentCodelab/dependentlayout/src/main/resources/base/media/message_icon.jpg b/ComponentCodelab/dependentlayout/src/main/resources/base/media/message_icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2ce75607ff5fb9754b3536c0d7bb8212bc19379f GIT binary patch literal 3032 zcmeH}`8(8K8^?#H$0w2xDkIU%G?fq;TE;pvjb%ha^HpRigeD2;OAHw!L)OWXA--kF zzQ)%!=~0g@MwX0_QK>20gzOE^r$6EO@q1m*59dDDbzkS4`<(l_@7MdpoIhtKExAt; z27^hH%}KV<-0^z=|AK7U#qw+zOe%*=B3uY^p3Sr=^q?rVw*;22W9h`0y#yBLf=mL3 zB-5u1#F7V}YR9sY%|mP>Tc2F1s9hP+PSeqL(ArDCpZb(>?l4O>VGTn#M=(^h0@(yy zuCBD7XT|WV41{lhpp?Va6NJt!>HGS(_&yeHh_ms+4h_#`6zT92+cz-o&xCjy1?dF9g&H0vkmZ%if^;^X5VNOeY>h?WmpdmSTRF-BYY z;Jec|UU(j5?!-Hw+jiMAZjHeVRSgSOLm|V#36r!j~lC_r;A?oOGNAzM==s{g0R&7CS5{SfIe?%DBD7jr2=%5Cp?En zrtP>F+0cc?JmVTpc$nWs9@mPft*upGp8K#d^)?_4-SPO(@!-xnpV0(q#N3a24i;|? zfwU$SVtprW$aT=M6axXK+9t%JmkID*V47W_8}xu4B=_Pi@kOs zcY18$^W%IpnxBZ6^QO*nnR*t;TWtJHjx-UF(H9sQ?;f>+Hf?T6f2O z&q?6kRjwPFdqjD@CIGN0h^1lx$t*sNFjW$R_oV@gh3I?8;!my!A2>*IM0e-L!svyu zkyoC};z6I7?!XwR%de)d`Fk>gRR@p z{@)AkA89OaYABy}vyt%7=*P;_-FF5q+Kg|!LND}{jkh8K@`{V8dr!A^=VlfZ#cR(Q zM42^}kJ|8-`ZA(D)R>RHU*rYyG~5ouJ9kfgbwd-4KFAU4c{rYnN80A~(L08WA2(hr z9e_%OS(w>G8npzlf97q4zx?@Pt+&d|I$TLp6cV%Yq9w2qpL5shk}Iv@OB`%Lxw)#q)cHMkFK#dz~D3OZg8wCu@fz)BN(4^d4$|jiyj$6F#8w zcM)t0d%neRIC=q=z!N|2J1K<6n}ZT#U0Jx#IO^;=+H>$Ulo#ZDS@z|}g0j6~C6#NO zXNiwp_E&DAsI$`BrXkXPf*LJmaD_;WJFe8aqn#?l&#m)A}t|} zNqgl{HE>eiK55vx`~{`Dk4t12ocCe-08qXO(!qn-2i8P{$<+%_|i#9r-m^rBR_HxRupXy|7&o zeL#QREEjCG(@x&!HttAymvi-cQ3T$4;#fE&2?us3>!UyYimqLrl?_b6PlUtA7wFG@ zHm(9!LP!NN4piTS!d$rcXYh4Mcr9~(Os5XxhoWH2+6_A6rRs~wAfc~(a>&6?zdU(? z!oulwW7*miysNH#(q_z{bj^Zp+pqfKVy*7t&jN7R@-J_;Q`;l6gB=ELWuhR`hfIs^ zxA%wFMH?%=`oRm6^I)q3saH^1n@Ae85sx?}`(xY~iEcVriJ`SSJ^C$>{fNay=D+#h z8s}mg%dJU+w&D>3@aB~R*|C0Sce21%CvJo9>%nZNn&X6#I*u0O7WFmWxOyn8sv^@_ zlV>t1LNAEPHfTJ}kpsFhAhCW3r?9kApAUTEgp*0->=VJj$F@%QYIQ~>^^ar5(Rg&k zWHer?fj%?(x3C)0|CS?~XO!U8asVo{7soTUQU2w?MEZ<6D-ciX2JPF2Ov=CmAM?Rh zv#G{S$F4ppStx7i%o(yGQw5mByyds*3slY;2H4OI)X}1JA7}8QVnpzlZxUunssCwL z(qi4yzGh9K@UvG8L3d~R&l0q2+?o$Bkk1y>P0d7sBuev69f^pR<*m7j=|#}WtK%mLW(yB8lJCGf!ZXQLKA(|+Vxr&Fx;EEol8ma%t;Hz3k X1gqHdmt5wdA3Ka}a*k9^bfy0nCtghk literal 0 HcmV?d00001 diff --git a/ComponentCodelab/dependentlayout/src/main/resources/base/media/news_image.jpg b/ComponentCodelab/dependentlayout/src/main/resources/base/media/news_image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e58a289f7d136043766f33f168a87af367c370f3 GIT binary patch literal 32851 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�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 literal 0 HcmV?d00001 diff --git a/ComponentCodelab/dependentlayout/src/main/resources/base/media/news_image_right.jpg b/ComponentCodelab/dependentlayout/src/main/resources/base/media/news_image_right.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e3d1ca269b529e890a3e154ac081e93487f5743b GIT binary patch literal 48009 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 H|Cav;Pe|%1 literal 0 HcmV?d00001 diff --git a/ComponentCodelab/dependentlayout/src/main/resources/base/media/share_icon.jpg b/ComponentCodelab/dependentlayout/src/main/resources/base/media/share_icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f16c17cfe8f38bf5b947b61299fbec3c2405de8d GIT binary patch literal 6719 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 O08(974Xa}N>i+@E(6Dp> literal 0 HcmV?d00001 diff --git a/ComponentCodelab/dependentlayout/src/main/resources/en/element/string.json b/ComponentCodelab/dependentlayout/src/main/resources/en/element/string.json new file mode 100644 index 00000000..16265349 --- /dev/null +++ b/ComponentCodelab/dependentlayout/src/main/resources/en/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "dependentlayout_MainAbility", + "value": "dependentlayout_MainAbility" + }, + { + "name": "mainability_description", + "value": "Java_Empty Ability" + }, + { + "name": "mainability_HelloWorld", + "value": "Hello World" + } + ] +} diff --git a/ComponentCodelab/dependentlayout/src/main/resources/zh/element/string.json b/ComponentCodelab/dependentlayout/src/main/resources/zh/element/string.json new file mode 100644 index 00000000..698146d4 --- /dev/null +++ b/ComponentCodelab/dependentlayout/src/main/resources/zh/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "dependentlayout_MainAbility", + "value": "dependentlayout_MainAbility" + }, + { + "name": "mainability_description", + "value": "Java_Empty Ability" + }, + { + "name": "mainability_HelloWorld", + "value": "你好,世界" + } + ] +} \ No newline at end of file diff --git a/ComponentCodelab/dependentlayout/src/ohosTest/java/com/huawei/dependentlayout/ExampleOhosTest.java b/ComponentCodelab/dependentlayout/src/ohosTest/java/com/huawei/dependentlayout/ExampleOhosTest.java new file mode 100644 index 00000000..435a3a73 --- /dev/null +++ b/ComponentCodelab/dependentlayout/src/ohosTest/java/com/huawei/dependentlayout/ExampleOhosTest.java @@ -0,0 +1,14 @@ +package com.huawei.dependentlayout; + +import ohos.aafwk.ability.delegation.AbilityDelegatorRegistry; +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +public class ExampleOhosTest { + @Test + public void testBundleName() { + final String actualBundleName = AbilityDelegatorRegistry.getArguments().getTestBundleName(); + assertEquals("com.huawei.cookbook", actualBundleName); + } +} \ No newline at end of file diff --git a/ComponentCodelab/dependentlayout/src/test/java/com/huawei/dependentlayout/ExampleTest.java b/ComponentCodelab/dependentlayout/src/test/java/com/huawei/dependentlayout/ExampleTest.java new file mode 100644 index 00000000..1368d9ec --- /dev/null +++ b/ComponentCodelab/dependentlayout/src/test/java/com/huawei/dependentlayout/ExampleTest.java @@ -0,0 +1,9 @@ +package com.huawei.dependentlayout; + +import org.junit.Test; + +public class ExampleTest { + @Test + public void onStart() { + } +} diff --git a/ComponentCodelab/directionallayout/build.gradle b/ComponentCodelab/directionallayout/build.gradle new file mode 100644 index 00000000..66c5259e --- /dev/null +++ b/ComponentCodelab/directionallayout/build.gradle @@ -0,0 +1,28 @@ +apply plugin: 'com.huawei.ohos.hap' +apply plugin: 'com.huawei.ohos.decctest' +//For instructions on signature configuration, see https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide_debug_device-0000001053822404#ZH-CN_TOPIC_0000001154985555__section1112183053510 +ohos { + compileSdkVersion 5 + defaultConfig { + compatibleSdkVersion 5 + } + buildTypes { + release { + proguardOpt { + proguardEnabled false + rulesFiles 'proguard-rules.pro' + } + } + } + entryModules "entry" +} + +dependencies { + entryImplementation project(':entry') + implementation fileTree(dir: 'libs', include: ['*.jar', '*.har']) + testImplementation 'junit:junit:4.13' + ohosTestImplementation 'com.huawei.ohos.testkit:runner:1.0.0.100' +} +decc { + supportType = ['html', 'xml'] +} diff --git a/ComponentCodelab/directionallayout/src/main/config.json b/ComponentCodelab/directionallayout/src/main/config.json new file mode 100644 index 00000000..31b6ce4a --- /dev/null +++ b/ComponentCodelab/directionallayout/src/main/config.json @@ -0,0 +1,37 @@ +{ + "app": { + "bundleName": "com.huawei.cookbook", + "vendor": "huawei", + "version": { + "code": 1000000, + "name": "1.0.0" + } + }, + "deviceConfig": {}, + "module": { + "package": "com.huawei.directionallayout", + "name": ".MyApplication", + "mainAbility": "com.huawei.directionallayout.MainAbility", + "deviceType": [ + "phone" + ], + "distro": { + "deliveryWithInstall": true, + "moduleName": "directionallayout", + "moduleType": "feature", + "installationFree": false + }, + "abilities": [ + { + "orientation": "unspecified", + "visible": true, + "name": "com.huawei.directionallayout.MainAbility", + "icon": "$media:icon", + "description": "$string:mainability_description", + "label": "$string:directionallayout_MainAbility", + "type": "page", + "launchType": "standard" + } + ] + } +} \ No newline at end of file diff --git a/ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/MainAbility.java b/ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/MainAbility.java new file mode 100644 index 00000000..79134d24 --- /dev/null +++ b/ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/MainAbility.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.directionallayout; + +import com.huawei.directionallayout.slice.MainAbilitySlice; + +import ohos.aafwk.ability.Ability; +import ohos.aafwk.content.Intent; + +/** + * MainAbility + */ +public class MainAbility extends Ability { + @Override + public void onStart(Intent intent) { + super.onStart(intent); + super.setMainRoute(MainAbilitySlice.class.getName()); + } +} diff --git a/ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/MyApplication.java b/ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/MyApplication.java new file mode 100644 index 00000000..540c56bf --- /dev/null +++ b/ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/MyApplication.java @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.directionallayout; + +import ohos.aafwk.ability.AbilityPackage; + +/** + * MyApplication + */ +public class MyApplication extends AbilityPackage { + @Override + public void onInitialize() { + super.onInitialize(); + } +} diff --git a/ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/slice/MainAbilitySlice.java b/ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/slice/MainAbilitySlice.java new file mode 100644 index 00000000..79492fcb --- /dev/null +++ b/ComponentCodelab/directionallayout/src/main/java/com/huawei/directionallayout/slice/MainAbilitySlice.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.directionallayout.slice; + +import com.huawei.directionallayout.ResourceTable; + +import ohos.aafwk.ability.AbilitySlice; +import ohos.aafwk.content.Intent; + +/** + * MainAbilitySlice + */ +public class MainAbilitySlice extends AbilitySlice { + @Override + public void onStart(Intent intent) { + super.onStart(intent); + super.setUIContent(ResourceTable.Layout_directional_layout); + } + + @Override + public void onActive() { + super.onActive(); + } + + @Override + public void onForeground(Intent intent) { + super.onForeground(intent); + } +} diff --git a/ComponentCodelab/directionallayout/src/main/resources/base/element/string.json b/ComponentCodelab/directionallayout/src/main/resources/base/element/string.json new file mode 100644 index 00000000..045a58f5 --- /dev/null +++ b/ComponentCodelab/directionallayout/src/main/resources/base/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "directionallayout_MainAbility", + "value": "directionallayout_MainAbility" + }, + { + "name": "mainability_description", + "value": "Java_Empty Ability" + }, + { + "name": "mainability_HelloWorld", + "value": "Hello World" + } + ] +} \ No newline at end of file diff --git a/ComponentCodelab/directionallayout/src/main/resources/base/graphic/background_directional_layout.xml b/ComponentCodelab/directionallayout/src/main/resources/base/graphic/background_directional_layout.xml new file mode 100644 index 00000000..c0c0a3df --- /dev/null +++ b/ComponentCodelab/directionallayout/src/main/resources/base/graphic/background_directional_layout.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/ComponentCodelab/directionallayout/src/main/resources/base/layout/directional_layout.xml b/ComponentCodelab/directionallayout/src/main/resources/base/layout/directional_layout.xml new file mode 100644 index 00000000..c6193961 --- /dev/null +++ b/ComponentCodelab/directionallayout/src/main/resources/base/layout/directional_layout.xml @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ComponentCodelab/directionallayout/src/main/resources/base/media/icon.png b/ComponentCodelab/directionallayout/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c GIT binary patch literal 6790 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 newsInfoList; + private Context context; + + /** + * 有参构造 + * @param listBasicInfo 新闻信息集合 + * @param context context + */ + public NewsListProvider(List listBasicInfo, Context context) { + this.newsInfoList = listBasicInfo; + this.context = context; + } + + @Override + public int getCount() { + return newsInfoList == null ? 0 : newsInfoList.size(); + } + + @Override + public Object getItem(int position) { + return Optional.of(this.newsInfoList.get(position)); + } + + @Override + public long getItemId(int position) { + return position; + } + + @Override + public Component getComponent(int position, Component componentP, ComponentContainer componentContainer) { + ViewHolder viewHolder = null; + Component component = componentP; + if (component == null) { + component = LayoutScatter.getInstance(context).parse(ResourceTable.Layout_item_news_layout, null, false); + viewHolder = new ViewHolder(); + Component componentTitle = component.findComponentById(ResourceTable.Id_item_news_title); + Component componentImage = component.findComponentById(ResourceTable.Id_item_news_image); + if (componentTitle instanceof Text) { + viewHolder.title = (Text) componentTitle; + } + if (componentImage instanceof Image) { + viewHolder.image = (Image) componentImage; + } + component.setTag(viewHolder); + } else { + if (component.getTag() instanceof ViewHolder) { + viewHolder = (ViewHolder) component.getTag(); + } + } + if (viewHolder != null) { + viewHolder.title.setText(newsInfoList.get(position).getTitle()); + viewHolder.image.setScaleMode(Image.ScaleMode.STRETCH); + } + return component; + } + + /** + * 显示内容 + */ + private static class ViewHolder { + Text title; + Image image; + } +} diff --git a/ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/provider/NewsTypeProvider.java b/ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/provider/NewsTypeProvider.java new file mode 100644 index 00000000..2bc745cf --- /dev/null +++ b/ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/provider/NewsTypeProvider.java @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbook.provider; + +import com.huawei.cookbook.ResourceTable; + +import ohos.agp.components.BaseItemProvider; +import ohos.agp.components.Component; +import ohos.agp.components.ComponentContainer; +import ohos.agp.components.LayoutScatter; +import ohos.agp.components.Text; +import ohos.app.Context; + +import java.util.Optional; + +/** + * NewsTypeProvider + */ +public class NewsTypeProvider extends BaseItemProvider { + private String[] newsTypeLists; + private Context context; + + /** + * 有参构造 + * @param listBasicInfo 新闻类型集合 + * @param context context + */ + public NewsTypeProvider(String[] listBasicInfo, Context context) { + this.newsTypeLists = listBasicInfo; + this.context = context; + } + + @Override + public int getCount() { + return newsTypeLists == null ? 0 : newsTypeLists.length; + } + + @Override + public Object getItem(int position) { + return Optional.of(this.newsTypeLists[position]); + } + + @Override + public long getItemId(int position) { + return position; + } + + @Override + public Component getComponent(int position, Component componentP, ComponentContainer componentContainer) { + ViewHolder viewHolder = null; + Component component = componentP; + if (component == null) { + component = LayoutScatter.getInstance(context).parse(ResourceTable.Layout_item_news_type_layout, + null, false); + viewHolder = new ViewHolder(); + Component componentText = component.findComponentById(ResourceTable.Id_news_type_text); + if (componentText instanceof Text) { + viewHolder.title = (Text) componentText; + } + component.setTag(viewHolder); + } else { + if (component.getTag() instanceof ViewHolder) { + viewHolder = (ViewHolder) component.getTag(); + } + } + if (viewHolder != null) { + viewHolder.title.setText(newsTypeLists[position]); + } + return component; + } + + /** + * 显示内容 + */ + private static class ViewHolder { + Text title; + } +} diff --git a/ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/slice/MainAbilitySlice.java b/ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/slice/MainAbilitySlice.java new file mode 100644 index 00000000..25b7d78a --- /dev/null +++ b/ComponentCodelab/listcontainer/src/main/java/com/huawei/cookbook/slice/MainAbilitySlice.java @@ -0,0 +1,168 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.cookbook.slice; + +import com.huawei.cookbook.ResourceTable; +import com.huawei.cookbook.provider.NewsInfo; +import com.huawei.cookbook.provider.NewsListProvider; +import com.huawei.cookbook.provider.NewsTypeProvider; + +import ohos.aafwk.ability.AbilitySlice; +import ohos.aafwk.content.Intent; +import ohos.agp.components.Component; +import ohos.agp.components.ListContainer; +import ohos.agp.components.Text; +import ohos.agp.utils.Color; + +import java.util.ArrayList; +import java.util.List; + +/** + * MainAbilitySlice + */ +public class MainAbilitySlice extends AbilitySlice { + private static final float FOCUS_TEXT_SIZE = 1.2f; + private static final float UNFOCUS_TEXT_SIZE = 1.0f; + private Text selectText; + private ListContainer newsListContainer; + private ListContainer selectorListContainer; + private List totalNews; + private List selectNews; + private NewsTypeProvider newsTypeProvider; + private NewsListProvider newsListProvider; + + @Override + public void onStart(Intent intent) { + super.onStart(intent); + super.setUIContent(ResourceTable.Layout_news_list_layout); + initView(); + initProvider(); + setListContainer(); + initListener(); + } + + private void initView() { + selectorListContainer = (ListContainer) findComponentById(ResourceTable.Id_selector_list); + newsListContainer = (ListContainer) findComponentById(ResourceTable.Id_news_container); + } + + /** + * 初始化Provider + */ + private void initProvider() { + String[] listNames = new String[]{"All", "Health", "Finance", "Technology", "Sport", "Internet", "Game"}; + newsTypeProvider = new NewsTypeProvider(listNames, this); + newsTypeProvider.notifyDataChanged(); + + String[] newsTypes = new String[]{"Health", "Finance", "Finance", "Technology", "Sport", + "Health", "Internet", "Game", "Game", "Internet"}; + String[] newsTitles = new String[]{ + "Best Enterprise Wi-Fi Network Award of the Wireless Broadband Alliance 2020", + "Openness and Cooperation Facilitate Industry Upgrade", + "High-voltage super-fast charging is an inevitable trend", + "Ten Future Trends of Digital Energy", + "Ascend Helps Industry, Learning, and Research Promote AI Industry " + + "Development in the National AI Contest", + "Enterprise data centers are moving towards autonomous driving network", + "One optical fiber lights up a green smart room", + "Trust technology, embrace openness, and share the world prosperity brought by technology", + "Intelligent Twins Won the Leading Technology Achievement Award at the 7th World Internet Conference", + "Maximizing the Value of Wireless Networks and Ushering in the Golden Decade of 5G" + }; + totalNews = new ArrayList<>(); + selectNews = new ArrayList<>(); + for (int i = 0; i < newsTypes.length; i++) { + NewsInfo newsInfo = new NewsInfo(); + newsInfo.setTitle(newsTitles[i]); + newsInfo.setType(newsTypes[i]); + totalNews.add(newsInfo); + } + selectNews.addAll(totalNews); + newsListProvider = new NewsListProvider(selectNews, this); + newsListProvider.notifyDataChanged(); + } + + /** + * 将Provider应用到ListContainer + */ + private void setListContainer() { + selectorListContainer.setItemProvider(newsTypeProvider); + newsListContainer.setItemProvider(newsListProvider); + } + + /** + * 为ListContainer绑定点击事件 + */ + private void initListener() { + selectorListContainer.setItemClickedListener((listContainer, component, position, listener) -> { + setCategorizationFocus(false); + Component newsTypeText = component.findComponentById(ResourceTable.Id_news_type_text); + if (newsTypeText instanceof Text) { + selectText = (Text) newsTypeText; + } + setCategorizationFocus(true); + selectNews.clear(); + if (position == 0) { + selectNews.addAll(totalNews); + } else { + setNewsData(); + } + updateListView(); + }); + selectorListContainer.setSelected(true); + selectorListContainer.setSelectedItemIndex(0); + } + + private void setNewsData() { + String newsType = selectText.getText(); + for (NewsInfo newsData : totalNews) { + if (newsType.equals(newsData.getType())) { + selectNews.add(newsData); + } + } + } + + private void setCategorizationFocus(boolean isFocus) { + if (selectText == null) { + return; + } + if (isFocus) { + selectText.setTextColor(new Color(Color.getIntColor("#afaafa"))); + selectText.setScaleX(FOCUS_TEXT_SIZE); + selectText.setScaleY(FOCUS_TEXT_SIZE); + } else { + selectText.setTextColor(new Color(Color.getIntColor("#999999"))); + selectText.setScaleX(UNFOCUS_TEXT_SIZE); + selectText.setScaleY(UNFOCUS_TEXT_SIZE); + } + } + + private void updateListView() { + newsListProvider.notifyDataChanged(); + newsListContainer.invalidate(); + newsListContainer.scrollToCenter(0); + } + + @Override + public void onActive() { + super.onActive(); + } + + @Override + public void onForeground(Intent intent) { + super.onForeground(intent); + } +} diff --git a/ComponentCodelab/listcontainer/src/main/resources/base/element/string.json b/ComponentCodelab/listcontainer/src/main/resources/base/element/string.json new file mode 100644 index 00000000..4e9487fa --- /dev/null +++ b/ComponentCodelab/listcontainer/src/main/resources/base/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "listcontainer_MainAbility", + "value": "listcontainer_MainAbility" + }, + { + "name": "mainability_description", + "value": "Java_Empty Ability" + }, + { + "name": "mainability_HelloWorld", + "value": "Hello World" + } + ] +} \ No newline at end of file diff --git a/ComponentCodelab/listcontainer/src/main/resources/base/graphic/background_ability_main.xml b/ComponentCodelab/listcontainer/src/main/resources/base/graphic/background_ability_main.xml new file mode 100644 index 00000000..c0c0a3df --- /dev/null +++ b/ComponentCodelab/listcontainer/src/main/resources/base/graphic/background_ability_main.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/ComponentCodelab/listcontainer/src/main/resources/base/layout/item_news_layout.xml b/ComponentCodelab/listcontainer/src/main/resources/base/layout/item_news_layout.xml new file mode 100644 index 00000000..f7205704 --- /dev/null +++ b/ComponentCodelab/listcontainer/src/main/resources/base/layout/item_news_layout.xml @@ -0,0 +1,32 @@ + + + + + + + + \ No newline at end of file diff --git a/ComponentCodelab/listcontainer/src/main/resources/base/layout/item_news_type_layout.xml b/ComponentCodelab/listcontainer/src/main/resources/base/layout/item_news_type_layout.xml new file mode 100644 index 00000000..350b339d --- /dev/null +++ b/ComponentCodelab/listcontainer/src/main/resources/base/layout/item_news_type_layout.xml @@ -0,0 +1,15 @@ + + + + \ No newline at end of file diff --git a/ComponentCodelab/listcontainer/src/main/resources/base/layout/news_list_layout.xml b/ComponentCodelab/listcontainer/src/main/resources/base/layout/news_list_layout.xml new file mode 100644 index 00000000..928af1d0 --- /dev/null +++ b/ComponentCodelab/listcontainer/src/main/resources/base/layout/news_list_layout.xml @@ -0,0 +1,21 @@ + + + + + + \ No newline at end of file diff --git a/ComponentCodelab/listcontainer/src/main/resources/base/media/icon.png b/ComponentCodelab/listcontainer/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c GIT binary patch literal 6790 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�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 literal 0 HcmV?d00001 diff --git a/ComponentCodelab/listcontainer/src/main/resources/base/media/news_image_right.jpg b/ComponentCodelab/listcontainer/src/main/resources/base/media/news_image_right.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e3d1ca269b529e890a3e154ac081e93487f5743b GIT binary patch literal 48009 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 H|Cav;Pe|%1 literal 0 HcmV?d00001 diff --git a/ComponentCodelab/listcontainer/src/main/resources/en/element/string.json b/ComponentCodelab/listcontainer/src/main/resources/en/element/string.json new file mode 100644 index 00000000..d176a22b --- /dev/null +++ b/ComponentCodelab/listcontainer/src/main/resources/en/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "listcontainer_MainAbility", + "value": "listcontainer_MainAbility" + }, + { + "name": "mainability_description", + "value": "Java_Empty Ability" + }, + { + "name": "mainability_HelloWorld", + "value": "Hello World" + } + ] +} diff --git a/ComponentCodelab/listcontainer/src/main/resources/zh/element/string.json b/ComponentCodelab/listcontainer/src/main/resources/zh/element/string.json new file mode 100644 index 00000000..278ff0d1 --- /dev/null +++ b/ComponentCodelab/listcontainer/src/main/resources/zh/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "listcontainer_MainAbility", + "value": "listcontainer_MainAbility" + }, + { + "name": "mainability_description", + "value": "Java_Empty Ability" + }, + { + "name": "mainability_HelloWorld", + "value": "你好,世界" + } + ] +} \ No newline at end of file diff --git a/ComponentCodelab/listcontainer/src/ohosTest/java/com/huawei/cookbook/ExampleOhosTest.java b/ComponentCodelab/listcontainer/src/ohosTest/java/com/huawei/cookbook/ExampleOhosTest.java new file mode 100644 index 00000000..bf27899a --- /dev/null +++ b/ComponentCodelab/listcontainer/src/ohosTest/java/com/huawei/cookbook/ExampleOhosTest.java @@ -0,0 +1,14 @@ +package com.huawei.cookbook; + +import ohos.aafwk.ability.delegation.AbilityDelegatorRegistry; +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +public class ExampleOhosTest { + @Test + public void testBundleName() { + final String actualBundleName = AbilityDelegatorRegistry.getArguments().getTestBundleName(); + assertEquals("com.huawei.cookbook", actualBundleName); + } +} \ No newline at end of file diff --git a/ComponentCodelab/listcontainer/src/test/java/com/huawei/cookbook/ExampleTest.java b/ComponentCodelab/listcontainer/src/test/java/com/huawei/cookbook/ExampleTest.java new file mode 100644 index 00000000..2a3bdc23 --- /dev/null +++ b/ComponentCodelab/listcontainer/src/test/java/com/huawei/cookbook/ExampleTest.java @@ -0,0 +1,9 @@ +package com.huawei.cookbook; + +import org.junit.Test; + +public class ExampleTest { + @Test + public void onStart() { + } +} diff --git a/ComponentCodelab/radiocontainer/build.gradle b/ComponentCodelab/radiocontainer/build.gradle new file mode 100644 index 00000000..66c5259e --- /dev/null +++ b/ComponentCodelab/radiocontainer/build.gradle @@ -0,0 +1,28 @@ +apply plugin: 'com.huawei.ohos.hap' +apply plugin: 'com.huawei.ohos.decctest' +//For instructions on signature configuration, see https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide_debug_device-0000001053822404#ZH-CN_TOPIC_0000001154985555__section1112183053510 +ohos { + compileSdkVersion 5 + defaultConfig { + compatibleSdkVersion 5 + } + buildTypes { + release { + proguardOpt { + proguardEnabled false + rulesFiles 'proguard-rules.pro' + } + } + } + entryModules "entry" +} + +dependencies { + entryImplementation project(':entry') + implementation fileTree(dir: 'libs', include: ['*.jar', '*.har']) + testImplementation 'junit:junit:4.13' + ohosTestImplementation 'com.huawei.ohos.testkit:runner:1.0.0.100' +} +decc { + supportType = ['html', 'xml'] +} diff --git a/ComponentCodelab/radiocontainer/src/main/config.json b/ComponentCodelab/radiocontainer/src/main/config.json new file mode 100644 index 00000000..37a76c1d --- /dev/null +++ b/ComponentCodelab/radiocontainer/src/main/config.json @@ -0,0 +1,37 @@ +{ + "app": { + "bundleName": "com.huawei.cookbook", + "vendor": "huawei", + "version": { + "code": 1000000, + "name": "1.0.0" + } + }, + "deviceConfig": {}, + "module": { + "package": "com.huawei.radiocontainer", + "name": ".MyApplication", + "mainAbility": "com.huawei.radiocontainer.MainAbility", + "deviceType": [ + "phone" + ], + "distro": { + "deliveryWithInstall": true, + "moduleName": "radiocontainer", + "moduleType": "feature", + "installationFree": false + }, + "abilities": [ + { + "orientation": "unspecified", + "visible": true, + "name": "com.huawei.radiocontainer.MainAbility", + "icon": "$media:icon", + "description": "$string:mainability_description", + "label": "$string:radiocontainer_MainAbility", + "type": "page", + "launchType": "standard" + } + ] + } +} \ No newline at end of file diff --git a/ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/MainAbility.java b/ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/MainAbility.java new file mode 100644 index 00000000..1698bb83 --- /dev/null +++ b/ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/MainAbility.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.radiocontainer; + +import com.huawei.radiocontainer.slice.MainAbilitySlice; + +import ohos.aafwk.ability.Ability; +import ohos.aafwk.content.Intent; + +/** + * MainAbility + */ +public class MainAbility extends Ability { + @Override + public void onStart(Intent intent) { + super.onStart(intent); + super.setMainRoute(MainAbilitySlice.class.getName()); + } +} diff --git a/ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/MyApplication.java b/ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/MyApplication.java new file mode 100644 index 00000000..e16a86c8 --- /dev/null +++ b/ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/MyApplication.java @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.radiocontainer; + +import ohos.aafwk.ability.AbilityPackage; + +/** + * MyApplication + */ +public class MyApplication extends AbilityPackage { + @Override + public void onInitialize() { + super.onInitialize(); + } +} diff --git a/ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/slice/MainAbilitySlice.java b/ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/slice/MainAbilitySlice.java new file mode 100644 index 00000000..f1aea7b1 --- /dev/null +++ b/ComponentCodelab/radiocontainer/src/main/java/com/huawei/radiocontainer/slice/MainAbilitySlice.java @@ -0,0 +1,86 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License,Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.huawei.radiocontainer.slice; + +import com.huawei.radiocontainer.ResourceTable; + +import ohos.aafwk.ability.AbilitySlice; +import ohos.aafwk.content.Intent; +import ohos.agp.colors.RgbPalette; +import ohos.agp.components.ComponentState; +import ohos.agp.components.RadioButton; +import ohos.agp.components.RadioContainer; +import ohos.agp.components.Text; +import ohos.agp.components.element.ShapeElement; +import ohos.agp.components.element.StateElement; + +import java.util.Locale; + +/** + * MainAbilitySlice + */ +public class MainAbilitySlice extends AbilitySlice { + @Override + public void onStart(Intent intent) { + super.onStart(intent); + super.setUIContent(ResourceTable.Layout_radio_container); + initComponent(); + } + + /** + * 定义RadioButton的背景 + * @return 背景样式 + */ + private StateElement getStateElement() { + ShapeElement elementButtonOn = new ShapeElement(); + elementButtonOn.setRgbColor(RgbPalette.RED); + elementButtonOn.setShape(ShapeElement.OVAL); + + ShapeElement elementButtonOff = new ShapeElement(); + elementButtonOff.setRgbColor(RgbPalette.DARK_GRAY); + elementButtonOff.setShape(ShapeElement.OVAL); + + StateElement checkElement = new StateElement(); + checkElement.addState(new int[]{ComponentState.COMPONENT_STATE_CHECKED}, elementButtonOn); + checkElement.addState(new int[]{ComponentState.COMPONENT_STATE_EMPTY}, elementButtonOff); + return checkElement; + } + + /** + * 初始化组件并设置响应RadioContainer状态改变的事件,显示单选结果 + */ + private void initComponent() { + Text answer = (Text) findComponentById(ResourceTable.Id_answer); + RadioContainer container = (RadioContainer) findComponentById(ResourceTable.Id_radio_container); + int count = container.getChildCount(); + for (int i = 0; i < count; i++) { + ((RadioButton) container.getComponentAt(i)).setButtonElement(getStateElement()); + } + container.setMarkChangedListener((radioContainer1, index) -> { + answer.setText(String.format(Locale.ROOT,"[%c]", (char) ('A' + index))); + }); + } + + @Override + public void onActive() { + super.onActive(); + } + + @Override + public void onForeground(Intent intent) { + super.onForeground(intent); + } +} diff --git a/ComponentCodelab/radiocontainer/src/main/resources/base/element/string.json b/ComponentCodelab/radiocontainer/src/main/resources/base/element/string.json new file mode 100644 index 00000000..b71cb947 --- /dev/null +++ b/ComponentCodelab/radiocontainer/src/main/resources/base/element/string.json @@ -0,0 +1,16 @@ +{ + "string": [ + { + "name": "radiocontainer_MainAbility", + "value": "radiocontainer_MainAbility" + }, + { + "name": "mainability_description", + "value": "Java_Empty Ability" + }, + { + "name": "mainability_HelloWorld", + "value": "Hello World" + } + ] +} \ No newline at end of file diff --git a/ComponentCodelab/radiocontainer/src/main/resources/base/graphic/background_radio_container.xml b/ComponentCodelab/radiocontainer/src/main/resources/base/graphic/background_radio_container.xml new file mode 100644 index 00000000..c0c0a3df --- /dev/null +++ b/ComponentCodelab/radiocontainer/src/main/resources/base/graphic/background_radio_container.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/ComponentCodelab/radiocontainer/src/main/resources/base/layout/radio_container.xml b/ComponentCodelab/radiocontainer/src/main/resources/base/layout/radio_container.xml new file mode 100644 index 00000000..6b2a0b07 --- /dev/null +++ b/ComponentCodelab/radiocontainer/src/main/resources/base/layout/radio_container.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ComponentCodelab/radiocontainer/src/main/resources/base/media/icon.png b/ComponentCodelab/radiocontainer/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c GIT binary patch literal 6790 zcmX|G1ymHk)?T_}Vd;>R?p|tHQo6fg38|$UVM!6BLrPFWk?s;$LOP{GmJpBl$qoSA!PUg~PA65-S00{{S`XKG6NkG0RgjEntPrmV+?0|00mu7;+5 zrdpa{2QLqPJ4Y{j7=Mrl{BaxrkdY69+c~(w{Fv-v&aR%aEI&JYSeRTLWm!zbv;?)_ ziZB;fwGbbeL5Q}YLx`J$lp~A09KK8t_z}PZ=4ZzgdeKtgoc+o5EvN9A1K1_<>M?MBqb#!ASf&# zEX?<)!RH(7>1P+j=jqG(58}TVN-$psA6K}atCuI!KTJD&FMmH-78ZejBm)0qc{ESp z|LuG1{QnBUJRg_E=h1#XMWt2%fcoN@l7eAS!Es?Q+;XsRNPhiiE=@AqlLkJzF`O18 zbsbSmKN=aaq8k3NFYZfDWpKmM!coBU0(XnL8R{4=i|wi{!uWYM2je{U{B*K2PVdu&=E zTq*-XsEsJ$u5H4g6DIm2Y!DN`>^v|AqlwuCD;w45K0@eqauiqWf7l&o)+YLHm~|L~ z7$0v5mkobriU!H<@mVJHLlmQqzQ3d6Rh_-|%Yy2li*tHO>_vcnuZ7OR_xkAIuIU&x z-|8Y0wj|6|a6_I(v91y%k_kNw6pnkNdxjqG8!%Vz_d%c_!X+6-;1`GC9_FpjoHev5fEV7RhJ>r=mh-jp$fqbqRJ=obwdgLDVP5+s zy1=_DWG0Y-Jb3t^WXmkr(d9~08k-|#Ly zaNOmT(^9tIb&eb4%CzIT zAm3CUtWSr1t4?h1kk#NBi{U|pJslvME{q|_eS^3En>SOqSxyuN1x;Is@8~m?*>}** znrRFArP!K_52RpX*&JHMR<^lVdm8ypJ}0R(SD(51j;6@ni$6bQ+2XL+R^|NnSp5}(kzvMZ^(@4fD_{QVu$(&K6H|C37TG1Am9Re{<<3gd zh@`>;BqkXMW&p0T6rt|iB$)~CvFe(XC)F9WgAZn*0@t$oZo;!*}r@_`h?KKH&6A@3= zISXoQB+~`op>NP-buiA*^0n{@i{_?MRG)&k)c)k_F+-2Lud!S9pc+i`s74NpBCaGF zXN+pHkubw*msGBTY27BKHv)RRh3;nMg4&$fD_6X9Vt~;_4D+5XPH~#Kn-yjcy!$}1 zigv#FNY>TqMhtIBb@UoF!cE~Q8~;!Pek>SQQwHnHuWKoVBosAiOr}q>!>aE*Krc)V zBUMEcJ5NU0g8}-h6i1zpMY9>m4ne?=U2~`w7K7Q0gB_=p@$5K7p6}thw z-~3dMj?YNX2X$lZ+7ngQ$=s}3mizNN@kE%OtB)?c&i~2L55z8^=yz;xMHLmlY>&Q# zJj?!)M#q_SyfkQh)k?j8IfLtB)ZCp|*vf4_B zos?73yd^h-Ac+;?E4*bpf=o*^3x3-`TVjbY4n6!EN10K6o@fxdyps05Vo3PU)otB} z`3kR+2w7_C#8Z!q`J)p{Vh!+m9-UP!$STp+Hb}}#@#_u^SsUQg<}59< zTvH3%XS4G+6FF^(m6bVF&nSUIXcl;nw{=H$%fgeJ>CgDYiLdpDXr{;-AnG z8dvcrHYVMI&`R6;GWekI@Ir3!uo)oz4^{6q0m^}@f2tM9&=YHNi6-?rh0-{+k@cQm zdp`g#YdQn%MDVg2GR>wZ`n2<0l4)9nx1Wfr&!Dvz=bPwU!h2S?ez6MVc5APE4-xLB zi&W9Q8k2@0w!C53g?iAIQ}~p*3O(@zja6KQ=M3zfW*_6o5SwR-)6VBh~m7{^-=MC-owYH5-u40a}a0liho3QZZ5L{bS_xM1)4}19)zTU$$MY zq3eZML1WC{K%YFd`Be0M-rkO^l?h{kM{$2oK1*A@HVJ57*yhDkUF!2WZ&oA4Y-sK( zCY69%#`mBCi6>6uw(x4gbFaP0+FD*JKJ-q!F1E?vLJ+d35!I5d7@^eU?(CS|C^tmI5?lv@s{{*|1F zFg|OzNpZ0hxljdjaW%45O0MOttRrd(Z?h{HYbB-KFUx&9GfFL3b8NwZ$zNu)WbBD` zYkj$^UB5%3Pj1MDr>S2Ejr9pUcgA!;ZG!@{uAy12)vG=*^9-|dNQBc8&`oxBlU~#y zs!anJX&T?57Jdr^sb>e+V`MVfY>Y0ESg7MG<7W0g&bR-ZYzzZ%2H&Etcp zcd6QeXO1D!5A#zM0lx*GH}`M)2~ZFLE;sP^RSB5wVMNfiZXPd(cmO>j=OSA3`o5r& zna(|^jGXbdN7PK)U8b7^zYtYkkeb%<%F~=OqB~kXMQkq}ii|skh@WSRt>5za;cjP0 zZ~nD%6)wzedqE}BMLt~qKwlvTr33))#uP~xyw#*Eaa|DbMQ_%mG0U8numf8)0DX`r zRoG2bM;#g|p-8gWnwRV5SCW0tLjLO&9Z?K>FImeIxlGUgo0Zk`9Qzhj1eco~7XZy+hXc@YF&ZQ=? zn*^1O56yK^x{y}q`j7}blGCx%dydV!c7)g~tJzmHhV=W~jbWRRR{1<^oDK+1clprm zz$eCy7y9+?{E|YgkW~}}iB#I4XoJ*xr8R?i_Hv$=Cof5bo-Nj~f`-DLebH}&0% zfQj9@WGd4;N~Y?mzQsHJTJq6!Qzl^-vwol(+fMt#Pl=Wh#lI5Vmu@QM0=_r+1wHt` z+8WZ~c2}KQQ+q)~2Ki77QvV&`xb|xVcTms99&cD$Zz4+-^R4kvUBxG8gDk7Y`K*)JZ^2rL(+ZWV~%W(@6 z)0bPArG#BROa_PHs~&WplQ_UIrpd)1N1QGPfv!J(Z9jNT#i%H?CE6|pPZb9hJ1JW4 z^q;ft#!HRNV0YgPojzIYT`8LuET2rUe-J|c!9l4`^*;4WtY@Ew@pL>wkjmMgGfN7 ze}}GtmU0@<_#08~I-Suk=^*9GLW=H4xhsml;vAV{%hy5Eegl@!6qKqbG024%n2HHw zCc@ivW_$@5ZoHP70(7D+(`PvgjW1Pd`wsiuv-aCukMrafwDm)B!xXVy*j2opohhoU zcJz%ADmj>i3`-3-$7nQKBQQuGY;2Qt&+(L~C>vSGFj5{Mlv?T_^dql;{zkpe4R1}R z%XfZyQ}wr*sr>jrKgm*PWLjuVc%6&&`Kbf1SuFpHPN&>W)$GmqC;pIoBC`=4-hPY8 zT*>%I2fP}vGW;R=^!1be?ta2UQd2>alOFFbVl;(SQJ4Jk#)4Z0^wpWEVvY4=vyDk@ zqlModi@iVPMC+{?rm=4(n+<;|lmUO@UKYA>EPTS~AndtK^Wy^%#3<;(dQdk3WaUkRtzSMC9}7x2||CNpF#(3T4C)@ z$~RWs`BNABKX|{cmBt>Q=&gkXl&x!!NK_%5hW0LS)Z4PB>%sV?F-{Wyj#s7W%$F{D zXdK^Fp3wvy+48+GP6F_|^PCRx=ddcTO3sG;B23A49~Qaw31SZ0Rc~`r4qqt%#OGW{ zCA_(LG5^N>yzUn&kAgVmxb=EA8s&tBXC}S1CZ(KoW)(%^JjLTPo^fs`Va;`=YlVPgmB$!yB}<(4ym6OeZ3xAJJ#;)2+B%p3P1Wt+d$eo`vz`T zXfUP2))kBDPoscH;Jc7I3NU<({|@wM$&GaDt`n7WLgIY3IA7A6-_R?z8N3mz|}*i z(zl5ot--Oq@f2-nv{X(ujT2T(k1vY_qh93pK@>H-qc%2Xta)IP0Q%zt%bqYgI`o!wv!0QerB`nCN^1n|@$sVOQ!V0teVG!I z_fD%JvfDeT1cK#-{o6Gv7}& zY0#NWin~kVaf$aufV&;63Hbs|`QVZWpDX6IMk1Hj2G}fiH9e-^6u2zf^FIr^BwD<6zjw63+{yUe8PUFvk8v{sJ=R{d#`O!sz`Q13~< zPT$JS(w=yQfU2`zPCNfSw=&zup@DXc(98afjhv@1w_f!m2Z>rMJ19AB&dB%P#Ls3b z=lK7OILM+SQ&VEd=1GN6o&>YVVtIzoZ%=Z_SdqJN2}E43{bE`>w+A;=y->@^k{oCC z$F*WTY&?34;kfyFV?b*Xb1Pq`Z=%OgwEg)Rz)tx=`f%5#w_INP=x&z5!jI;#;N$ma zhO)+MDm;SxOEVL15; zGq(v2pL3&P1Sl)8P*;G-fd{l1QJsv@e@d8)1PK4w2m*M%V3j-V~L^$i|&C@b?D?9tfwE{B^}Z$k8e5FmQ>v7Xz)sG32g9t}YBt zyR$+*_00RmPx+0mW+vVG4mxd(n$(eQf3-w>JPl2UJpafrPaL5@2j}%{VE-) zBI%6Qpj*dsdH<;g!S!avA~bv^0E+ zfyJbSjPb+j;J52U)<|cIcntQBI2T#>2;tOxu{%D?kML476AErF(qN9hPva5Nkc@BF zC-tLF@3ZFb%Kpj)M<{)x*l|*Ia@ECeXo2E4h2f!aV=cHAhi_E_mfUth(sM4^hJq7B zQsGWqdZUm9S%F`$nQ*_#NcuD`&)Ek%_s{&^78{9Hm ztri&rYLOxgFdG>O@+XHy z9#;|&vBCPXH5Mon^I`jSuR$&~ZWtyB67ujzFSj!51>#C}C17~TffQ{c-!QFQkTQ%! zIR^b1`zHx|*1GU?tbBx23weFLz5H?y_Q%N&t$}k?w+``2A=aotj0;2v$~AL z{scF-cL{wsdrmPvf#a9OHyYLcwQD4Kcm)`LLwMh4WT~p29f7M!iafJSU`IV}QY5Wa z(n44-9oA}?J{a+ah*@31WTs#&J#o1`H98#6IQf;Wv0N_!);f&9g7o-k(lW5rWnDUR zQBFIRG+X=6NnsI@mxnwm;tf5;_Uxg?jZ8m-m0}&6+DA!qam(p$mN5R})yA_7m$q@| zFEd|dpS595rxQr-n#GjI5i-AhnUE>Cr;jpCqSrD~EwK_DqI^7%3#p5)%T_od!t3SOmH9MyXeeGO2(UQL;ax|x?Ncixmeo1=$ z{-);Au{*tfzOG?KQ~K|ak8-HQ?`Pekhe2WM(8s{xv-p>Zmu_6{G!-oE$7$mY`MOJorI=+mMx?H;`pr!;fVYz?5~yXBACruWB`Ph zZM}90_<^OBxIhyZ9BW$`>6JvO;%VFpqVr8|7t3~AmxYak6?`Pp#c;**_SYmi`&z23 z`p6_~ePvH)C6x-G9$hgL=eVALq`-AiamN>!3~Lxw&{H(b{B(7xSRm6<3<{%{yXiH# zos5Rv1L+8fUKJLo%P>4I&$}y + + + + \ No newline at end of file diff --git a/ComponentCodelab/stacklayout/src/main/resources/base/layout/stack_layout.xml b/ComponentCodelab/stacklayout/src/main/resources/base/layout/stack_layout.xml new file mode 100644 index 00000000..756f6f2e --- /dev/null +++ b/ComponentCodelab/stacklayout/src/main/resources/base/layout/stack_layout.xml @@ -0,0 +1,31 @@ + + + + + + \ No newline at end of file diff --git a/ComponentCodelab/stacklayout/src/main/resources/base/media/icon.png b/ComponentCodelab/stacklayout/src/main/resources/base/media/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ce307a8827bd75456441ceb57d530e4c8d45d36c GIT binary patch literal 6790 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 + + + + \ No newline at end of file diff --git a/ComponentCodelab/tablelayout/src/main/resources/base/graphic/button_element.xml b/ComponentCodelab/tablelayout/src/main/resources/base/graphic/button_element.xml new file mode 100644 index 00000000..ba40e3d5 --- /dev/null +++ b/ComponentCodelab/tablelayout/src/main/resources/base/graphic/button_element.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/ComponentCodelab/tablelayout/src/main/resources/base/graphic/circle_button_element.xml b/ComponentCodelab/tablelayout/src/main/resources/base/graphic/circle_button_element.xml new file mode 100644 index 00000000..a5fffc16 --- /dev/null +++ b/ComponentCodelab/tablelayout/src/main/resources/base/graphic/circle_button_element.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/ComponentCodelab/tablelayout/src/main/resources/base/layout/table_layout.xml b/ComponentCodelab/tablelayout/src/main/resources/base/layout/table_layout.xml new file mode 100644 index 00000000..4570632a --- /dev/null +++ b/ComponentCodelab/tablelayout/src/main/resources/base/layout/table_layout.xml @@ -0,0 +1,159 @@ + + + + +