From 4f44a8b5f38094d3c6d4b238f8a4def56e0c70d6 Mon Sep 17 00:00:00 2001 From: liangdidi <775290428@qq.com> Date: Fri, 24 Sep 2021 21:51:33 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=B7=A6=E5=8F=B3?= =?UTF-8?q?=E6=BB=91=E5=8A=A8=E7=95=8C=E9=9D=A2=E9=94=99=E4=B9=B1=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../github/hellocsl/gallerylayoutmanager/TestFraction.java | 1 - .../java/github/hellocsl/layoutmanager/gallery/Banner.java | 6 ++++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/entry/src/main/java/github/hellocsl/gallerylayoutmanager/TestFraction.java b/entry/src/main/java/github/hellocsl/gallerylayoutmanager/TestFraction.java index f11b080..cc44867 100644 --- a/entry/src/main/java/github/hellocsl/gallerylayoutmanager/TestFraction.java +++ b/entry/src/main/java/github/hellocsl/gallerylayoutmanager/TestFraction.java @@ -82,7 +82,6 @@ public class TestFraction extends Fraction { lcBottomList.clickedScrollByCenter(position); }); lcBottomList.setItemSelectedCallback((item, position) -> { - System.out.println("========setItemSelectedCallback=========="+position); EventHandler eventHandler = new EventHandler(EventRunner.getMainEventRunner()); eventHandler.postTask(() -> { if (isFirst) { diff --git a/library/src/main/java/github/hellocsl/layoutmanager/gallery/Banner.java b/library/src/main/java/github/hellocsl/layoutmanager/gallery/Banner.java index 4cbd22c..ae4b39d 100644 --- a/library/src/main/java/github/hellocsl/layoutmanager/gallery/Banner.java +++ b/library/src/main/java/github/hellocsl/layoutmanager/gallery/Banner.java @@ -79,6 +79,9 @@ public class Banner extends PageSlider implements PageSlider.PageChangedListener // 旧的当前页面 private int oldCurrentPage = 0; + // 当前页面 + private int currentPageIndex = 0; + // 页面间距 private int pageMargin = 0; @@ -237,6 +240,7 @@ public class Banner extends PageSlider implements PageSlider.PageChangedListener pageSelectedListener.onSelect(componentAt, getCurrentPage()); } setPageClicked(); + currentPageIndex = getCurrentPage(); } } @@ -472,6 +476,7 @@ public class Banner extends PageSlider implements PageSlider.PageChangedListener isSetCurrentPage = false; setCurrentPageUpdateIndex(itemPos); } else { + isSlideNextPage = itemPos > currentPageIndex; // 手动左右滑动,更新当前容器索引 if (isSlideNextPage) { newCurrentContainerIndex++; @@ -490,6 +495,7 @@ public class Banner extends PageSlider implements PageSlider.PageChangedListener if (pageSelectedListener != null) { pageSelectedListener.onSelect(groupContainer.getComponentAt(newCurrentContainerIndex), itemPos); } + currentPageIndex = itemPos; } /** -- Gitee From 413595cc859dd9052db5a80c1fee262fa5c01e48 Mon Sep 17 00:00:00 2001 From: liangqingsong Date: Sun, 26 Sep 2021 12:20:46 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E7=9E=AC=E9=97=B4?= =?UTF-8?q?=E5=B7=A6=E5=8F=B3=E6=BB=91=E5=8A=A8=EF=BC=8C=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E7=9A=84=E7=95=8C=E9=9D=A2=E9=94=99=E4=B9=B1=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hellocsl/layoutmanager/gallery/Banner.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/library/src/main/java/github/hellocsl/layoutmanager/gallery/Banner.java b/library/src/main/java/github/hellocsl/layoutmanager/gallery/Banner.java index ae4b39d..d767e74 100644 --- a/library/src/main/java/github/hellocsl/layoutmanager/gallery/Banner.java +++ b/library/src/main/java/github/hellocsl/layoutmanager/gallery/Banner.java @@ -39,6 +39,7 @@ import java.util.List; */ public class Banner extends PageSlider implements PageSlider.PageChangedListener, Component.TouchEventListener, Component.DrawTask { + private static final int CONSTANT_1 = 1; private static final int CONSTANT_2 = 2; private static final float CONSTANT_2F = 2f; private static final int CONSTANT_5 = 5; @@ -365,16 +366,21 @@ public class Banner extends PageSlider implements PageSlider.PageChangedListener offsetPixels = Math.abs(offsetPixels); } - // 偏移像素,正数-下一页,负数-上一页 - isSlideNextPage = offsetPixels > 0; - // 非滑动状态,更新当前索引 if (slideState != CONSTANT_2) { + // 偏移像素,正数-下一页,负数-上一页 + isSlideNextPage = offsetPixels > 0; currentContainerIndex = newCurrentContainerIndex; } else { isFirstSlide = false; } + if (isSlideNextPage) { + offsetPixels = CONSTANT_1; + } else { + offsetPixels = -CONSTANT_1; + } + setItemTransformer(offset, offsetPixels); } } @@ -477,6 +483,7 @@ public class Banner extends PageSlider implements PageSlider.PageChangedListener setCurrentPageUpdateIndex(itemPos); } else { isSlideNextPage = itemPos > currentPageIndex; + // 手动左右滑动,更新当前容器索引 if (isSlideNextPage) { newCurrentContainerIndex++; -- Gitee From 1e69821ad5ec5b962ffad513896c89622f0091cd Mon Sep 17 00:00:00 2001 From: liangqingsong Date: Sun, 26 Sep 2021 12:34:08 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=8D=87=E7=BA=A7=E7=89=88=E6=9C=AC1.0.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 3 +++ README.md | 4 ++-- entry/build.gradle | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f816e7f..c085eed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +## 1.0.1 +修复左右快速滑动,界面错乱问题 + ## 1.0.0 正式版本 diff --git a/README.md b/README.md index 168e9f4..1a609e0 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ allprojects { ``` dependencies { - implementation('com.gitee.chinasoft_ohos:GalleryLayoutManager:1.0.0') + implementation('com.gitee.chinasoft_ohos:GalleryLayoutManager:1.0.1') ...... } ``` @@ -94,7 +94,7 @@ CloudTest代码测试无异常 ## 版本迭代 -- 1.0.0 +- 1.0.1 ## 版权和许可信息 diff --git a/entry/build.gradle b/entry/build.gradle index f4501b9..23fd447 100644 --- a/entry/build.gradle +++ b/entry/build.gradle @@ -28,7 +28,7 @@ dependencies { // implementation project(':library') //远程依赖 - implementation('com.gitee.chinasoft_ohos:GalleryLayoutManager:1.0.0') + implementation('com.gitee.chinasoft_ohos:GalleryLayoutManager:1.0.1') } decc { supportType = ['html','xml'] -- Gitee