From ce3b9fd82950563feddceb48a0d1811d6a18e2ab Mon Sep 17 00:00:00 2001 From: pqaikc Date: Fri, 29 May 2020 16:35:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=A8=E7=94=BB=E6=8F=92?= =?UTF-8?q?=E5=80=BC=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ccb/arcselect/ui/ArcSelectActivity.java | 5 +++-- .../java/com/ccb/arcselect/ui/ArcSelectRotateActivity.java | 4 +++- .../main/java/com/ccb/arcselect/ui/AutoSelectActivity.java | 4 +++- .../java/com/ccb/arcselect/ui/HorizontalSelectActivity.java | 4 +++- 4 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/ccb/arcselect/ui/ArcSelectActivity.java b/app/src/main/java/com/ccb/arcselect/ui/ArcSelectActivity.java index f72ce14..0d09767 100644 --- a/app/src/main/java/com/ccb/arcselect/ui/ArcSelectActivity.java +++ b/app/src/main/java/com/ccb/arcselect/ui/ArcSelectActivity.java @@ -14,6 +14,7 @@ import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.view.ViewTreeObserver; +import android.view.animation.DecelerateInterpolator; import android.widget.AbsListView; import android.widget.ImageView; import android.widget.TextView; @@ -151,7 +152,7 @@ public class ArcSelectActivity extends AppCompatActivity { } - + private DecelerateInterpolator decelerateInterpolator = new DecelerateInterpolator(); /** * 移动指定索引到中心处 , 只可以移动可见区域的内容 * @param position @@ -173,7 +174,7 @@ public class ArcSelectActivity extends AppCompatActivity { + "\n当前居中控件距离顶部距离: " + childViewTop + "\n当前居中控件的一半高度: " + childVhalf + "\n滑动后再次移动距离: " + smoothDistance); - recyclerView.smoothScrollBy(0, smoothDistance,null,1000); + recyclerView.smoothScrollBy(0, smoothDistance,decelerateInterpolator); mAdapter.setSelectPosition(position); TUtils.show(ArcSelectActivity.this , "滑动后选中:" + mDatas.get(position)); } diff --git a/app/src/main/java/com/ccb/arcselect/ui/ArcSelectRotateActivity.java b/app/src/main/java/com/ccb/arcselect/ui/ArcSelectRotateActivity.java index 4dd29e8..34999e0 100644 --- a/app/src/main/java/com/ccb/arcselect/ui/ArcSelectRotateActivity.java +++ b/app/src/main/java/com/ccb/arcselect/ui/ArcSelectRotateActivity.java @@ -15,6 +15,7 @@ import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.view.ViewTreeObserver; +import android.view.animation.DecelerateInterpolator; import android.widget.AbsListView; import android.widget.ImageView; import android.widget.RelativeLayout; @@ -182,6 +183,7 @@ public class ArcSelectRotateActivity extends AppCompatActivity { translationYAnimator.start(); } + private DecelerateInterpolator decelerateInterpolator = new DecelerateInterpolator(); /** * 移动指定索引到中心处 , 只可以移动可见区域的内容 * @param position @@ -203,7 +205,7 @@ public class ArcSelectRotateActivity extends AppCompatActivity { + "\n当前居中控件距离顶部距离: " + childViewTop + "\n当前居中控件的一半高度: " + childVhalf + "\n滑动后再次移动距离: " + smoothDistance); - recyclerView.smoothScrollBy(0, smoothDistance,null,1000); + recyclerView.smoothScrollBy(0, smoothDistance,decelerateInterpolator); mAdapter.setSelectPosition(position); TUtils.show(ArcSelectRotateActivity.this , "滑动后选中:" + mDatas.get(position)); } diff --git a/app/src/main/java/com/ccb/arcselect/ui/AutoSelectActivity.java b/app/src/main/java/com/ccb/arcselect/ui/AutoSelectActivity.java index 23f53cb..105bf04 100644 --- a/app/src/main/java/com/ccb/arcselect/ui/AutoSelectActivity.java +++ b/app/src/main/java/com/ccb/arcselect/ui/AutoSelectActivity.java @@ -13,6 +13,7 @@ import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.view.ViewTreeObserver; +import android.view.animation.DecelerateInterpolator; import android.widget.AbsListView; import android.widget.TextView; import android.widget.Toast; @@ -164,6 +165,7 @@ private TextView tv; }); } + private DecelerateInterpolator decelerateInterpolator = new DecelerateInterpolator(); /** * 移动指定索引到中心处 , 只可以移动可见区域的内容 * @param position @@ -185,7 +187,7 @@ private TextView tv; + "\n当前居中控件距离顶部距离: " + childViewTop + "\n当前居中控件的一半高度: " + childVhalf + "\n滑动后再次移动距离: " + smoothDistance); - recyclerView.smoothScrollBy(0, smoothDistance,null,500); + recyclerView.smoothScrollBy(0, smoothDistance,decelerateInterpolator); mAdapter.setSelectPosition(position); tv.setText("当前选中:" + mDatas.get(position)); diff --git a/app/src/main/java/com/ccb/arcselect/ui/HorizontalSelectActivity.java b/app/src/main/java/com/ccb/arcselect/ui/HorizontalSelectActivity.java index d9c09cf..b48a902 100644 --- a/app/src/main/java/com/ccb/arcselect/ui/HorizontalSelectActivity.java +++ b/app/src/main/java/com/ccb/arcselect/ui/HorizontalSelectActivity.java @@ -9,6 +9,7 @@ import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.view.ViewTreeObserver; +import android.view.animation.DecelerateInterpolator; import android.widget.AbsListView; import android.widget.TextView; import android.widget.Toast; @@ -149,6 +150,7 @@ private final int CHILDVIEWSIZE = 100; }); } + private DecelerateInterpolator decelerateInterpolator = new DecelerateInterpolator(); /** * 移动指定索引到中心处 , 只可以移动可见区域的内容 * @param position @@ -170,7 +172,7 @@ private final int CHILDVIEWSIZE = 100; + "\n当前居中控件距离左部距离: " + childViewLeft + "\n当前居中控件的一半高度: " + childVhalf + "\n滑动后再次移动距离: " + smoothDistance); - recyclerView.smoothScrollBy(smoothDistance, 0,null,500); + recyclerView.smoothScrollBy(smoothDistance, 0,decelerateInterpolator); mAdapter.setSelectPosition(position); tv.setText("当前选中:" + mDatas.get(position)); -- GitLab