Skip to content

Commit

Permalink
Merge pull request #2211 from cxfeng1/ios-feature-20170118
Browse files Browse the repository at this point in the history
Ios feature 20170118
  • Loading branch information
kfeagle committed Jan 11, 2017
2 parents 2cebd32 + 21cc795 commit 6bccb06
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 5 deletions.
2 changes: 1 addition & 1 deletion ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m
Expand Up @@ -333,7 +333,7 @@ - (void)scrollToComponent:(WXComponent *)component withOffset:(CGFloat)offset

- (BOOL)isNeedLoadMore
{
if (_loadMoreOffset >= 0.0) {
if (_loadMoreOffset >= 0.0 && ((UIScrollView *)self.view).contentOffset.y >= 0) {
return _previousLoadMoreContentHeight != ((UIScrollView *)self.view).contentSize.height && ((UIScrollView *)self.view).contentSize.height - ((UIScrollView *)self.view).contentOffset.y - self.view.frame.size.height <= _loadMoreOffset;
}

Expand Down
7 changes: 6 additions & 1 deletion ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.h
Expand Up @@ -13,7 +13,12 @@
@interface WXSDKEngine : NSObject

/**
* @abstract Registers a module for a given name
* @abstract Register default modules/components/handlers, they will be reigstered only once.
**/
+ (void)registerDefaults;

/**
* @abstract Register a module for a given name
*
* @param name The module name to register
*
Expand Down
14 changes: 11 additions & 3 deletions ios/sdk/WeexSDK/Sources/Engine/WXSDKEngine.m
Expand Up @@ -208,13 +208,21 @@ + (void)initSDKEnvironment:(NSString *)script
return;
}

[self _registerDefaultComponents];
[self _registerDefaultModules];
[self _registerDefaultHandlers];
[self registerDefaults];

[[WXSDKManager bridgeMgr] executeJsFramework:script];
}

+ (void)registerDefaults
{
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
[self _registerDefaultComponents];
[self _registerDefaultModules];
[self _registerDefaultHandlers];
});
}

+ (NSString*)SDKEngineVersion
{
return WX_SDK_VERSION;
Expand Down
4 changes: 4 additions & 0 deletions ios/sdk/WeexSDK/Sources/Model/WXSDKInstance.m
Expand Up @@ -25,6 +25,7 @@
#import "WXResourceRequest.h"
#import "WXResourceResponse.h"
#import "WXResourceLoader.h"
#import "WXSDKEngine.h"

NSString *const bundleUrlOptionKey = @"bundleUrl";

Expand Down Expand Up @@ -173,6 +174,9 @@ - (void)_renderWithMainBundleString:(NSString *)mainBundleString
}
});

// ensure default modules/components/handlers are ready before create instance
[WXSDKEngine registerDefaults];

[[WXSDKManager bridgeMgr] createInstance:self.instanceId template:mainBundleString options:dictionary data:_jsData];

WX_MONITOR_PERF_SET(WXPTBundleSize, [mainBundleString lengthOfBytesUsingEncoding:NSUTF8StringEncoding], self);
Expand Down

0 comments on commit 6bccb06

Please sign in to comment.