You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by zs...@apache.org on 2017/07/21 10:27:20 UTC
[2/3] incubator-weex git commit: * [android] fix waterfall crash
* [android] fix waterfall crash
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/4ba3101b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/4ba3101b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/4ba3101b
Branch: refs/heads/0.15-dev
Commit: 4ba3101b9f9097615a4086a788303167d8601e23
Parents: c0f99ea
Author: 莫绪旻 <xu...@alibaba-inc.com>
Authored: Fri Jul 21 17:55:33 2017 +0800
Committer: 莫绪旻 <xu...@alibaba-inc.com>
Committed: Fri Jul 21 17:55:33 2017 +0800
----------------------------------------------------------------------
.../main/java/com/taobao/weex/dom/WXRecyclerDomObject.java | 4 ++++
.../com/taobao/weex/ui/component/list/WXListComponent.java | 8 ++++++++
2 files changed, 12 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4ba3101b/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java b/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java
index 62f4a22..7424a56 100644
--- a/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java
+++ b/android/sdk/src/main/java/com/taobao/weex/dom/WXRecyclerDomObject.java
@@ -91,10 +91,14 @@ public class WXRecyclerDomObject extends WXDomObject{
} else if (Constants.Value.AUTO != mColumnWidth && Constants.Value.AUTO == mColumnCount) {
mColumnCount = Math.round((mAvailableWidth + mColumnGap) / (mColumnWidth + mColumnGap)-0.5f);
mColumnCount = mColumnCount > 0 ? mColumnCount :1;
+ if (mColumnCount <= 0)
+ mColumnCount = Constants.Value.COLUMN_COUNT_NORMAL;
mColumnWidth =((mAvailableWidth + mColumnGap) / mColumnCount) - mColumnGap;
} else if(Constants.Value.AUTO != mColumnWidth && Constants.Value.AUTO != mColumnCount){
int columnCount = Math.round((mAvailableWidth + mColumnGap) / (mColumnWidth + mColumnGap)-0.5f);
mColumnCount = columnCount > mColumnCount ? mColumnCount :columnCount;
+ if (mColumnCount <= 0)
+ mColumnCount = Constants.Value.COLUMN_COUNT_NORMAL;
mColumnWidth= ((mAvailableWidth + mColumnGap) / mColumnCount) - mColumnGap;
}
mIsPreCalculateCellWidth = true;
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/4ba3101b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java
index 9b36be4..9a52dfb 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/WXListComponent.java
@@ -90,6 +90,14 @@ public class WXListComponent extends BasicListComponent<BounceRecyclerView> {
return;
}
setRefreshOrLoading(child);
+
+ // Synchronize DomObject's attr to Component and Native View
+ if(mDomObject.getColumnWidth() != mColumnWidth ||
+ mDomObject.getColumnCount() != mColumnCount ||
+ mDomObject.getColumnGap() != mColumnGap) {
+ updateRecyclerAttr();
+ getHostView().getInnerView().initView(getContext(), mLayoutType,mColumnCount,mColumnGap,getOrientation());
+ }
}