You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by so...@apache.org on 2017/03/14 08:15:08 UTC

[5/7] incubator-weex git commit: * [android] clear hostView clickListener if need

* [android] clear hostView clickListener if need


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/f71ea6f9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/f71ea6f9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/f71ea6f9

Branch: refs/heads/0.11-dev
Commit: f71ea6f9f84be8a30bfa22aea570837f1d9d1f07
Parents: 23d8e9d
Author: zshshr <zh...@gmail.com>
Authored: Tue Mar 14 15:32:46 2017 +0800
Committer: zshshr <zh...@gmail.com>
Committed: Tue Mar 14 15:32:46 2017 +0800

----------------------------------------------------------------------
 .../main/java/com/taobao/weex/ui/component/WXComponent.java    | 6 ++----
 .../view/listview/adapter/WXRecyclerViewOnScrollListener.java  | 4 ++++
 2 files changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f71ea6f9/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
index 7ce5b88..fb3eb1b 100755
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
@@ -145,7 +145,6 @@ import android.text.TextUtils;
 import android.view.Menu;
 import android.view.View;
 import android.view.ViewGroup;
-import android.widget.AdapterView;
 import android.widget.FrameLayout;
 
 import com.alibaba.fastjson.JSONArray;
@@ -1071,9 +1070,8 @@ public abstract class  WXComponent<T extends View> implements IWXObject, IWXActi
     }
     if(mHost != null) {
       mHost.setOnFocusChangeListener(null);
-      if(mHost instanceof AdapterView){
-        ((AdapterView)mHost).setOnItemClickListener(null);
-      }else {
+      if (mHostClickListeners != null && mHostClickListeners.size() > 0) {
+        mHostClickListeners.clear();
         mHost.setOnClickListener(null);
       }
     }

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f71ea6f9/android/sdk/src/main/java/com/taobao/weex/ui/view/listview/adapter/WXRecyclerViewOnScrollListener.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/listview/adapter/WXRecyclerViewOnScrollListener.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/listview/adapter/WXRecyclerViewOnScrollListener.java
index 597c1cb..ef8d149 100755
--- a/android/sdk/src/main/java/com/taobao/weex/ui/view/listview/adapter/WXRecyclerViewOnScrollListener.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/listview/adapter/WXRecyclerViewOnScrollListener.java
@@ -209,6 +209,8 @@ import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.support.v7.widget.StaggeredGridLayoutManager;
 
+import com.taobao.weex.utils.WXLogUtils;
+
 import java.lang.ref.WeakReference;
 
 
@@ -312,6 +314,7 @@ public class WXRecyclerViewOnScrollListener extends RecyclerView.OnScrollListene
         if (mFirstPositions == null || newSpanCount != mFirstPositions.length) {
           mFirstPositions = new int[newSpanCount];
         }
+        //avoid crash of support-v7 original bug
         try{
           staggeredGridLayoutManager.findFirstVisibleItemPositions(mFirstPositions);
           mFirstVisibleItemPosition = findMin(mFirstPositions);
@@ -325,6 +328,7 @@ public class WXRecyclerViewOnScrollListener extends RecyclerView.OnScrollListene
 
         }catch(Exception e){
           e.printStackTrace();
+          WXLogUtils.e(e.toString());
         }
 
       } else {