From 023e5996525d7d99b29b98cc14f7b89f4693a0c9 Mon Sep 17 00:00:00 2001 From: chentianyu <18756170827@163.com> Date: Tue, 8 Jun 2021 13:55:09 +0800 Subject: [PATCH 1/6] =?UTF-8?q?tooltips=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 1 - .../tomergoldst/tooltipsdemo/TextUtils.java | 7 ------- .../ToolTipBackgroundConstructor.java | 17 ---------------- .../tooltipshm/ToolTipCoordinatesFinder.java | 20 ------------------- .../tooltipshm/ToolTipsManager.java | 7 +++++-- 5 files changed, 5 insertions(+), 47 deletions(-) delete mode 100644 app/src/main/java/com/tomergoldst/tooltipsdemo/TextUtils.java diff --git a/app/build.gradle b/app/build.gradle index 31f1b23..d2e1bba 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -23,7 +23,6 @@ dependencies { ohosTestImplementation 'com.huawei.ohos.testkit:runner:1.0.0.100' implementation('com.gitee.chinasoft_ohos:RWidgetHelper:0.0.1-SNAPSHOT') implementation project(path : ':tooltips') - } decc { supportType = ['html','xml'] diff --git a/app/src/main/java/com/tomergoldst/tooltipsdemo/TextUtils.java b/app/src/main/java/com/tomergoldst/tooltipsdemo/TextUtils.java deleted file mode 100644 index ae2ee67..0000000 --- a/app/src/main/java/com/tomergoldst/tooltipsdemo/TextUtils.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.tomergoldst.tooltipsdemo; - -public class TextUtils { - public static boolean isEmpty(CharSequence str) { - return str == null || str.length() == 0; - } -} diff --git a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipBackgroundConstructor.java b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipBackgroundConstructor.java index 7c5d841..59a9bde 100644 --- a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipBackgroundConstructor.java +++ b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipBackgroundConstructor.java @@ -65,21 +65,4 @@ class ToolTipBackgroundConstructor { idAboveImageview.setBackground(shapeElement); imaLeftAbove.setPixelMap(imgResouse); } - - static void setBackground(Text idAboveImageview,int imgResouse) { - ShapeElement shapeElement=new ShapeElement(); - shapeElement.setShape(ShapeElement.RECTANGLE); - shapeElement.setRgbColor(new RgbColor(212, 35, 122)); - shapeElement.setCornerRadius(20); - idAboveImageview.setBackground(shapeElement); - - try { - PixelMapElement pixelMapElement = new PixelMapElement(idAboveImageview.getResourceManager().getResource(imgResouse)); - idAboveImageview.setBackground(pixelMapElement); - } catch (IOException e) { - e.printStackTrace(); - } catch (NotExistException e) { - e.printStackTrace(); - } - } } diff --git a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipCoordinatesFinder.java b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipCoordinatesFinder.java index e5d92f8..fd5d1b9 100644 --- a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipCoordinatesFinder.java +++ b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipCoordinatesFinder.java @@ -21,32 +21,12 @@ import ohos.agp.utils.TextAlignment; class ToolTipCoordinatesFinder { public static void getPositionRightTo(String textRight, Text textView, Text rightImageView) { - /* float fy = textView.getContentPositionY() + textView.getEstimatedHeight() / 2 - rightImageView.getEstimatedHeight() / 2; - float fx = textView.getContentPositionX() + textView.getEstimatedWidth(); - rightImageView.setContentPosition(fx, fy);*/ rightImageView.setText(textRight); rightImageView.setTextAlignment(TextAlignment.CENTER); } - public static void getPositionLeftTo(String textLeft, Text mtextView, Text leftImageView) { - /*float lefty = mtextView.getContentPositionY() + mtextView.getEstimatedHeight() / 2 - leftImageView.getEstimatedHeight() / 2; - float leftx = mtextView.getContentPositionX() - 6 * mtextView.getEstimatedWidth() / 5; - leftImageView.setContentPosition(leftx, lefty);*/ - leftImageView.setText(textLeft); - leftImageView.setTextAlignment(TextAlignment.CENTER); - } - public static void getPositionBelow(String editText, Text idBelowimageView, Text textView) { idBelowimageView.setText(editText); idBelowimageView.setTextAlignment(TextAlignment.CENTER); - /* float leftBelowy = textView.getContentPositionY() + textView.getEstimatedHeight(); - float leftBelowx = textView.getContentPositionX() + textView.getEstimatedWidth() / 2 - idBelowimageView.getEstimatedWidth() / 2; - idBelowimageView.setContentPosition(leftBelowx, leftBelowy);*/ - } - - public static void getPositionAbove(Text idAboveImageview, Text textView) { - float leftAbovey = textView.getContentPositionY() - idAboveImageview.getEstimatedHeight(); - float leftAbovex = textView.getContentPositionX() + textView.getEstimatedWidth() / 2 - idAboveImageview.getEstimatedWidth() / 2; - idAboveImageview.setContentPosition(leftAbovex, leftAbovey); } } \ No newline at end of file diff --git a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipsManager.java b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipsManager.java index c1537ad..0942ecc 100644 --- a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipsManager.java +++ b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipsManager.java @@ -80,6 +80,7 @@ public class ToolTipsManager { private Text tvAboveRight; private Text belowImageLeft; private Text belowImageRight; + /** * empty build ToolTipsManager */ @@ -124,8 +125,6 @@ public class ToolTipsManager { tvAboveRight = texts.get(SIX); belowImageLeft = texts.get(SEVEN); belowImageRight = texts.get(Eight); - - dlAboveleft = dependentLayouts.get(ZERO); dlAboveCenter = dependentLayouts.get(FIRST); dlAboveRight = dependentLayouts.get(TWO); @@ -175,15 +174,19 @@ public class ToolTipsManager { private void createAbove(Text idImageview,Image imaLeftAbove, int resource) { ToolTipBackgroundConstructor.setAboveBackground(idImageview,imaLeftAbove, resource); } + private void createLeft(Text idImageview,Image imaLeftAbove, int resource) { ToolTipBackgroundConstructor.setLeftBackground(idImageview,imaLeftAbove, resource); } + private void createRight(Text idImageview,Image imaLeftAbove, int resource) { ToolTipBackgroundConstructor.setRightBackground(idImageview,imaLeftAbove, resource); } + private void createBelow(Text idImageview,Image imaLeftAbove, int resource) { ToolTipBackgroundConstructor.setBelowBackground(idImageview,imaLeftAbove, resource); } + /** * 展示顶部位置 */ -- Gitee From 5a460626ce9249e8b14b15e5538f80a6e9c86472 Mon Sep 17 00:00:00 2001 From: chentianyu <18756170827@163.com> Date: Tue, 8 Jun 2021 14:26:08 +0800 Subject: [PATCH 2/6] =?UTF-8?q?tooltips=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tooltipsdemo/MainAbilitySlice.java | 55 +++++---- .../tomergoldst/tooltipshm/Coordinates.java | 35 ------ .../tooltipshm/DefaultToolTipAnimator.java | 10 +- .../ToolTipBackgroundConstructor.java | 13 +- .../tooltipshm/ToolTipsManager.java | 112 ++++++++++-------- 5 files changed, 98 insertions(+), 127 deletions(-) delete mode 100644 tooltips/src/main/java/com/tomergoldst/tooltipshm/Coordinates.java diff --git a/app/src/main/java/com/tomergoldst/tooltipsdemo/MainAbilitySlice.java b/app/src/main/java/com/tomergoldst/tooltipsdemo/MainAbilitySlice.java index 796e77b..acaf130 100644 --- a/app/src/main/java/com/tomergoldst/tooltipsdemo/MainAbilitySlice.java +++ b/app/src/main/java/com/tomergoldst/tooltipsdemo/MainAbilitySlice.java @@ -25,13 +25,10 @@ import ohos.agp.animation.Animator; import ohos.agp.animation.AnimatorProperty; import ohos.agp.colors.RgbColor; import ohos.agp.components.*; -import ohos.agp.components.element.PixelMapElement; import ohos.agp.components.element.ShapeElement; import ohos.agp.utils.Color; import ohos.agp.window.service.WindowManager; -import ohos.global.resource.NotExistException; -import java.io.IOException; import java.util.ArrayList; import java.util.List; @@ -133,34 +130,35 @@ public class MainAbilitySlice extends AbilitySlice implements mToolTipsManager.dismissDialog(); break; case ResourceTable.Id_above_image_view: + break; + default: + break; } } - //Control initialization + // Control initialization private void initView() { - dlAboveRight =(DependentLayout) findComponentById(ResourceTable.Id_dl_above_right); - dlAboveleft =(DependentLayout) findComponentById(ResourceTable.Id_dl_above_left); + dlAboveRight = (DependentLayout) findComponentById(ResourceTable.Id_dl_above_right); + dlAboveleft = (DependentLayout) findComponentById(ResourceTable.Id_dl_above_left); dlAboveCenter = (DependentLayout) findComponentById(ResourceTable.Id_dl_above); leftDlView = (DependentLayout) findComponentById(ResourceTable.Id_left_dl_view); rightDlView = (DependentLayout) findComponentById(ResourceTable.Id_right_dl_view); dlBelowLeft = (DependentLayout) findComponentById(ResourceTable.Id_dl_below_left); dlBelowCenter = (DependentLayout) findComponentById(ResourceTable.Id_dl_below_center); dlBelowRight = (DependentLayout) findComponentById(ResourceTable.Id_dl_below_right); - - imaAboveCenter= (Image) findComponentById(ResourceTable.Id_ima_above_center); - imaAboveLeft= (Image) findComponentById(ResourceTable.Id_ima_above_left); - imaAboveRight= (Image) findComponentById(ResourceTable.Id_ima_above_right); - imaLeftCenter= (Image) findComponentById(ResourceTable.Id_ima_left_center); - imaRightCenter= (Image) findComponentById(ResourceTable.Id_ima_right_center); - imaBelowLeft= (Image) findComponentById(ResourceTable.Id_ima_below_left); - imaBelowCenter= (Image) findComponentById(ResourceTable.Id_ima_below_center); - imaBelowRight= (Image) findComponentById(ResourceTable.Id_ima_below_right); - aboveViewleft= (Text) findComponentById(ResourceTable.Id_above_view_left); - aboveViewRight= (Text) findComponentById(ResourceTable.Id_above_view_right); - belowImageLeft= (Text) findComponentById(ResourceTable.Id_below_image_left); - belowImageRight= (Text) findComponentById(ResourceTable.Id_below_image_right); - + imaAboveCenter = (Image) findComponentById(ResourceTable.Id_ima_above_center); + imaAboveLeft = (Image) findComponentById(ResourceTable.Id_ima_above_left); + imaAboveRight = (Image) findComponentById(ResourceTable.Id_ima_above_right); + imaLeftCenter = (Image) findComponentById(ResourceTable.Id_ima_left_center); + imaRightCenter = (Image) findComponentById(ResourceTable.Id_ima_right_center); + imaBelowLeft = (Image) findComponentById(ResourceTable.Id_ima_below_left); + imaBelowCenter = (Image) findComponentById(ResourceTable.Id_ima_below_center); + imaBelowRight = (Image) findComponentById(ResourceTable.Id_ima_below_right); + aboveViewleft = (Text) findComponentById(ResourceTable.Id_above_view_left); + aboveViewRight = (Text) findComponentById(ResourceTable.Id_above_view_right); + belowImageLeft = (Text) findComponentById(ResourceTable.Id_below_image_left); + belowImageRight = (Text) findComponentById(ResourceTable.Id_below_image_right); mToolTipsManager = new ToolTipsManager(); mTextView = (Text) findComponentById(ResourceTable.Id_text_view); mAboveBtn = (Button) findComponentById(ResourceTable.Id_button_above); @@ -183,19 +181,21 @@ public class MainAbilitySlice extends AbilitySlice implements idAboveImageview = (Text) findComponentById(ResourceTable.Id_above_image_view); idBelowimageView = (Text) findComponentById(ResourceTable.Id_below_image_view); mEditText = (TextField) findComponentById(ResourceTable.Id_text_input_edit_text); - rightImageView.setClickedListener(this); leftImageView.setClickedListener(this); idAboveImageview.setClickedListener(this); idBelowimageView.setClickedListener(this); checkboxCenter.setChecked(true); + initList(); + } + + private void initList() { editFocusChange(); buttonAbovePositionInit(); checkboxes = new ArrayList<>(); checkboxes.add(checkboxLeft); checkboxes.add(checkboxCenter); checkboxes.add(checkboxRight); - buttons = new ArrayList<>(); buttons.add(mAboveBtn); buttons.add(mBelowBtn); @@ -212,8 +212,7 @@ public class MainAbilitySlice extends AbilitySlice implements texts.add(aboveViewRight); texts.add(belowImageLeft); texts.add(belowImageRight); - - dependentLayouts=new ArrayList<>(); + dependentLayouts = new ArrayList<>(); dependentLayouts.add(dlAboveleft); dependentLayouts.add(dlAboveCenter); dependentLayouts.add(dlAboveRight); @@ -223,7 +222,7 @@ public class MainAbilitySlice extends AbilitySlice implements dependentLayouts.add(dlBelowLeft); dependentLayouts.add(dlBelowCenter); dependentLayouts.add(dlBelowRight); - images=new ArrayList<>(); + images = new ArrayList<>(); images.add(imaAboveLeft); images.add(imaAboveCenter); images.add(imaAboveRight); @@ -236,7 +235,7 @@ public class MainAbilitySlice extends AbilitySlice implements buttons, checkboxes); } - //editText focus change + // editText focus change private void editFocusChange() { mEditText.setFocusChangedListener(new Component.FocusChangedListener() { @Override @@ -257,7 +256,7 @@ public class MainAbilitySlice extends AbilitySlice implements }); } - //set cursor color + // set cursor color private void setCursorColor(TextField styleEditText) { ShapeElement shapeElement = new ShapeElement(); shapeElement.setShape(ShapeElement.LINE); @@ -279,7 +278,7 @@ public class MainAbilitySlice extends AbilitySlice implements abovePopup.start(); } - //animates dismiss + // animates dismiss private void animateDismiss() { AnimatorProperty animatorValue = new AnimatorProperty(); animatorValue.alphaFrom(0).alpha(0).setCurveType(Animator.CurveType.ANTICIPATE_OVERSHOOT).setDuration(500); diff --git a/tooltips/src/main/java/com/tomergoldst/tooltipshm/Coordinates.java b/tooltips/src/main/java/com/tomergoldst/tooltipshm/Coordinates.java deleted file mode 100644 index 62ce9a5..0000000 --- a/tooltips/src/main/java/com/tomergoldst/tooltipshm/Coordinates.java +++ /dev/null @@ -1,35 +0,0 @@ -/* -Copyright 2016 Tomer Goldstein - -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.tomergoldst.tooltipshm; - -import ohos.agp.components.Component; - -class Coordinates { - int left; - int top; - int right; - int bottom; - - Coordinates(Component view) { - int[] location = new int[2]; - view.getLocationOnScreen(); - left = location[0]; - right = left + view.getWidth();; - top = location[1]; - bottom = top + view.getHeight(); - } -} \ No newline at end of file diff --git a/tooltips/src/main/java/com/tomergoldst/tooltipshm/DefaultToolTipAnimator.java b/tooltips/src/main/java/com/tomergoldst/tooltipshm/DefaultToolTipAnimator.java index ee0ac94..a4cf3bf 100644 --- a/tooltips/src/main/java/com/tomergoldst/tooltipshm/DefaultToolTipAnimator.java +++ b/tooltips/src/main/java/com/tomergoldst/tooltipshm/DefaultToolTipAnimator.java @@ -32,12 +32,12 @@ class DefaultToolTipAnimator implements ToolTipAnimator { } @Override - public AnimatorProperty popout(final Component view, final long duration, final AnimatorProperty animatorListenerAdapter) { + public AnimatorProperty popout(final Component view, final long duration, final AnimatorProperty animaAdapter) { AnimatorProperty animatorValue = new AnimatorProperty(); animatorValue.alpha(0).scaleX(0).scaleY(0).setDuration(duration).setCurveType(3); view.setVisibility(Component.INVISIBLE); - if (animatorListenerAdapter != null) { - animatorListenerAdapter.end(); + if (animaAdapter != null) { + animaAdapter.end(); } animatorValue.setStateChangedListener(new AnimatorProperty.StateChangedListener() { @Override @@ -55,8 +55,8 @@ class DefaultToolTipAnimator implements ToolTipAnimator { @Override public void onEnd(Animator animator) { view.setVisibility(Component.INVISIBLE); - if (animatorListenerAdapter != null) { - animatorListenerAdapter.end(); + if (animaAdapter != null) { + animaAdapter.end(); } } diff --git a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipBackgroundConstructor.java b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipBackgroundConstructor.java index 59a9bde..9b5f2c5 100644 --- a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipBackgroundConstructor.java +++ b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipBackgroundConstructor.java @@ -19,19 +19,14 @@ package com.tomergoldst.tooltipshm; import ohos.agp.colors.RgbColor; import ohos.agp.components.Image; import ohos.agp.components.Text; -import ohos.agp.components.element.PixelMapElement; import ohos.agp.components.element.ShapeElement; -import ohos.global.resource.NotExistException; -import ohos.global.resource.Resource; - -import java.io.IOException; class ToolTipBackgroundConstructor { /** * Select which background will be assign to the tip view */ static void setAboveBackground(Text idAboveImageview, Image imaLeftAbove, int imgResouse) { - ShapeElement shapeElement=new ShapeElement(); + ShapeElement shapeElement = new ShapeElement(); shapeElement.setShape(ShapeElement.RECTANGLE); shapeElement.setRgbColor(new RgbColor(212, 35, 122)); shapeElement.setCornerRadius(20); @@ -40,7 +35,7 @@ class ToolTipBackgroundConstructor { } static void setLeftBackground(Text idAboveImageview, Image imaLeftAbove, int imgResouse) { - ShapeElement shapeElement=new ShapeElement(); + ShapeElement shapeElement = new ShapeElement(); shapeElement.setShape(ShapeElement.RECTANGLE); shapeElement.setRgbColor(new RgbColor(160, 219, 142)); shapeElement.setCornerRadius(20); @@ -49,7 +44,7 @@ class ToolTipBackgroundConstructor { } static void setRightBackground(Text idAboveImageview, Image imaLeftAbove, int imgResouse) { - ShapeElement shapeElement=new ShapeElement(); + ShapeElement shapeElement = new ShapeElement(); shapeElement.setShape(ShapeElement.RECTANGLE); shapeElement.setRgbColor(new RgbColor(139, 0, 0)); shapeElement.setCornerRadius(20); @@ -58,7 +53,7 @@ class ToolTipBackgroundConstructor { } static void setBelowBackground(Text idAboveImageview, Image imaLeftAbove, int imgResouse) { - ShapeElement shapeElement=new ShapeElement(); + ShapeElement shapeElement = new ShapeElement(); shapeElement.setShape(ShapeElement.RECTANGLE); shapeElement.setRgbColor(new RgbColor(255, 165, 0)); shapeElement.setCornerRadius(20); diff --git a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipsManager.java b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipsManager.java index 0942ecc..98482a3 100644 --- a/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipsManager.java +++ b/tooltips/src/main/java/com/tomergoldst/tooltipshm/ToolTipsManager.java @@ -92,20 +92,22 @@ public class ToolTipsManager { /** * ToolTipsManager * - * @param meditText + * @param dependentLayouts + * @param ima + * @param mText * @param texts - * @param buttons - * @param checkList + * @param btons + * @param cList */ - public ToolTipsManager(List dependentLayouts, List images, TextField meditText, List texts, - List