You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by ky...@apache.org on 2018/06/07 02:57:31 UTC
[1/2] incubator-weex git commit: [WEEX-342][android] List
NullPointerException Bug Fix
Repository: incubator-weex
Updated Branches:
refs/heads/master 981158f90 -> 600d3b139
[WEEX-342][android] List NullPointerException Bug Fix
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/600d3b13
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/600d3b13
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/600d3b13
Branch: refs/heads/master
Commit: 600d3b1392bb81cd984f54363c19d2351494bd15
Parents: 27e13ef
Author: jianbai.gbj <gu...@163.com>
Authored: Fri Jun 1 16:52:25 2018 +0800
Committer: YorkShen <sh...@gmail.com>
Committed: Thu Jun 7 10:57:18 2018 +0800
----------------------------------------------------------------------
.../java/com/taobao/weex/ui/component/list/BasicListComponent.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/600d3b13/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
index a147f03..14dc743 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
@@ -224,7 +224,7 @@ public abstract class BasicListComponent<T extends ViewGroup & ListComponentView
@Override
public void destroy() {
- if(mAppearChangeRunnable != null) {
+ if(mAppearChangeRunnable != null && getHostView() != null) {
getHostView().removeCallbacks(mAppearChangeRunnable);
mAppearChangeRunnable = null;
}
[2/2] incubator-weex git commit: [WEEX-342][android] The index
attribute of the slider component does not work on Android.
Posted by ky...@apache.org.
[WEEX-342][android] The index attribute of the slider component does not work on Android.
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/27e13efb
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/27e13efb
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/27e13efb
Branch: refs/heads/master
Commit: 27e13efb2e8f7f13a892e7a5d1e93ac011b202fb
Parents: 981158f
Author: jianbai.gbj <gu...@163.com>
Authored: Fri Jun 1 10:55:08 2018 +0800
Committer: YorkShen <sh...@gmail.com>
Committed: Thu Jun 7 10:57:18 2018 +0800
----------------------------------------------------------------------
.../com/taobao/weex/ui/component/WXSlider.java | 31 ++++++++++++++++++--
1 file changed, 29 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/27e13efb/android/sdk/src/main/java/com/taobao/weex/ui/component/WXSlider.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXSlider.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXSlider.java
index cee6520..a31b56c 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXSlider.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXSlider.java
@@ -64,6 +64,8 @@ public class WXSlider extends WXVContainer<FrameLayout> {
private float offsetXAccuracy = 0.1f;
private int initIndex = -1;
private boolean keepIndex = false;
+ private Runnable initRunnable;
+
public static class Creator implements ComponentCreator {
public WXComponent createInstance(WXSDKInstance instance, WXVContainer parent, BasicComponentData basicComponentData) throws IllegalAccessException, InvocationTargetException, InstantiationException {
@@ -186,8 +188,19 @@ public class WXSlider extends WXVContainer<FrameLayout> {
mAdapter.addPageView(view);
hackTwoItemsInfiniteScroll();
if (initIndex != -1 && mAdapter.getRealCount() > initIndex) {
- mViewPager.setCurrentItem(initIndex);
- initIndex = -1;
+ if(initRunnable == null){
+ initRunnable = new Runnable() {
+ @Override
+ public void run() {
+ initIndex = getInitIndex();
+ mViewPager.setCurrentItem(initIndex);
+ initIndex = -1;
+ initRunnable = null;
+ }
+ };
+ }
+ mViewPager.removeCallbacks(initRunnable);
+ mViewPager.postDelayed(initRunnable, 50);
} else {
if (!keepIndex) {
mViewPager.setCurrentItem(0);
@@ -251,6 +264,20 @@ public class WXSlider extends WXVContainer<FrameLayout> {
}
+
+ private int getInitIndex(){
+ Object index = getAttrs().get(Constants.Name.INDEX);
+ int select = WXUtils.getInteger(index, initIndex);
+ if(mAdapter == null || mAdapter.getCount() == 0){
+ return 0;
+ }
+ if(select >= mAdapter.getRealCount()){
+ select = select%mAdapter.getRealCount();
+ }
+ return select;
+ }
+
+
@Override
protected boolean setProperty(String key, Object param) {
switch (key) {