diff --git a/README.md b/README.md index 355982a19e728780f8829e8bd56d7c1040a985c0..214462c46ff97a91a6040d6d15792b24dd735331 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # MultipleStatueView #### 项目介绍 -- 项目名称:**MultipleStatueView** +- 项目名称:MultipleStatueView - 所属系列:openharmony的第三方组件适配移植 - 功能:一个支持多种状态的自定义View,可以方便的切换到加载中视图,错误视图,空数据视图,网络异常视图,内容视图。 - 项目移植状态:主功能完成 @@ -33,6 +33,7 @@ allprojects { } ``` +在sdk6,DevEco Studio2.2 Beta1下项目可直接运行 如无法运行,删除项目.gradle,.idea,build,gradle,build.gradle文件, 并依据自己的版本创建新项目,将新项目的对应文件复制到根目录下 #### 使用说明 @@ -180,7 +181,7 @@ CodeCheck代码测试无异常 CloudTest代码测试无异常 -火绒安全病毒安全检测通过 +病毒安全检测通过 当前版本demo功能与原组件基本无差异 #### 版本迭代 diff --git a/entry/src/main/java/com/classic/common/simple/RefreshAbility.java b/entry/src/main/java/com/classic/common/simple/RefreshAbility.java index 636256cecc4a26ea241dccf38b2c7ee819bb378a..60eccde3c2d2b86ef1a580ab698eb96f2921743d 100644 --- a/entry/src/main/java/com/classic/common/simple/RefreshAbility.java +++ b/entry/src/main/java/com/classic/common/simple/RefreshAbility.java @@ -82,7 +82,6 @@ public class RefreshAbility extends AbsAbility implements Component.TouchEventLi public void postDelayed(Runnable runnable, int delay) { handler.postTask(runnable, delay); } - @Override public boolean onTouchEvent(Component component, TouchEvent ev) { final int action = ev.getAction(); @@ -94,51 +93,25 @@ public class RefreshAbility extends AbsAbility implements Component.TouchEventLi int sumX = 0; int sumY = 0; switch (action) { - //单指触摸 case TouchEvent.PRIMARY_POINT_DOWN: mLastX = ev.getPointerPosition(ev.getIndex()).getX(); mLastY = ev.getPointerPosition(ev.getIndex()).getY(); break; - //多指触摸求平均值 - case TouchEvent.OTHER_POINT_DOWN: - for (int i = 0; i < ev.getPointerCount(); i++) { - sumX += ev.getPointerPosition(i).getX(); - sumY += ev.getPointerPosition(i).getY(); - } - mLastX = sumX / ev.getPointerCount(); - mLastY = sumY / ev.getPointerCount(); - break; - //一根手指抬起求其他手指的平均值 - case TouchEvent.OTHER_POINT_UP: - int index = ev.getIndex(); - for (int i = 0; i < ev.getPointerCount(); i++) { - if (index == i) { - continue; - } - sumX += ev.getPointerPosition(i).getX(); - sumY += ev.getPointerPosition(i).getY(); - } - mLastX = sumX / ev.getPointerCount(); - mLastY = sumY / ev.getPointerCount(); - break; + case TouchEvent.POINT_MOVE: - //下拉 a是拉的次数 offsetY 都>0,上拉 第一次offsetY>0,第二次offsetY<0; float current_Y = ev.getPointerPosition(ev.getIndex()).getY(); scrollY = current_Y - mLastY; refresh = true; break; - case TouchEvent.PRIMARY_POINT_UP: int offsetY = (int) scrollY; if (offsetY >10&&!listContainer.canScroll(Component.DRAG_DOWN)) { startTopLoading(); } - //下拉距离超过头部刷新距离 postDelayed(callback, 2000); refresh = false; mLastY = 0; break; - case TouchEvent.CANCEL: break; }