Repository: incubator-weex
Updated Branches:
  refs/heads/0.12-dev 6057668f8 -> c6349812e


* [ios] scrollToElement should have no effect if the scroller itself can not 
scroll
  * demo:http://dotwe.org/vue/b1ca4e9b6caea65106b152048afd3677


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

Branch: refs/heads/0.12-dev
Commit: 27a19d1064ce10561a234dcb2c98269266f7311d
Parents: d876e67
Author: 隐风 <cxf...@apache.org>
Authored: Tue Mar 14 16:16:00 2017 +0800
Committer: 隐风 <cxf...@apache.org>
Committed: Tue Mar 14 16:16:00 2017 +0800

----------------------------------------------------------------------
 ios/sdk/WeexSDK/Sources/Component/WXListComponent.m     | 5 +++++
 ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m | 7 +++++++
 2 files changed, 12 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/27a19d10/ios/sdk/WeexSDK/Sources/Component/WXListComponent.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Component/WXListComponent.m 
b/ios/sdk/WeexSDK/Sources/Component/WXListComponent.m
index c9f8a0e..e019eba 100644
--- a/ios/sdk/WeexSDK/Sources/Component/WXListComponent.m
+++ b/ios/sdk/WeexSDK/Sources/Component/WXListComponent.m
@@ -173,6 +173,11 @@
 
 - (void)scrollToComponent:(WXComponent *)component withOffset:(CGFloat)offset 
animated:(BOOL)animated
 {
+    if (_tableView.contentSize.height <= _tableView.frame.size.height) {
+        // can not scroll
+        return;
+    }
+    
     CGPoint contentOffset = _tableView.contentOffset;
     CGFloat contentOffsetY = 0;
     

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/27a19d10/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m 
b/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m
index de08173..f931815 100644
--- a/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m
+++ b/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m
@@ -318,6 +318,13 @@ WX_EXPORT_METHOD(@selector(resetLoadmore))
 - (void)scrollToComponent:(WXComponent *)component withOffset:(CGFloat)offset 
animated:(BOOL)animated
 {
     UIScrollView *scrollView = (UIScrollView *)self.view;
+    
+    if ((_scrollDirection == WXScrollDirectionHorizontal && 
scrollView.contentSize.width <= scrollView.frame.size.width)
+        || (_scrollDirection == WXScrollDirectionVertical && 
scrollView.contentSize.height <= scrollView.frame.size.height)) {
+        // can not scroll
+        return;
+    }
+
     CGPoint contentOffset = scrollView.contentOffset;
     CGFloat scaleFactor = self.weexInstance.pixelScaleFactor;
     

Reply via email to