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/06/07 08:06:15 UTC
[38/50] incubator-weex git commit: * [ios] remove notification for
text if needs
* [ios] remove notification for text if needs
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/1308ff19
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/1308ff19
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/1308ff19
Branch: refs/heads/dev
Commit: 1308ff195c4710a4aed7689fbb275f2aae31895a
Parents: a4cc8df
Author: acton393 <zh...@gmail.com>
Authored: Fri Jun 2 11:30:03 2017 +0800
Committer: acton393 <zh...@gmail.com>
Committed: Fri Jun 2 11:30:03 2017 +0800
----------------------------------------------------------------------
ios/sdk/WeexSDK/Sources/Component/WXTextComponent.m | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1308ff19/ios/sdk/WeexSDK/Sources/Component/WXTextComponent.m
----------------------------------------------------------------------
diff --git a/ios/sdk/WeexSDK/Sources/Component/WXTextComponent.m b/ios/sdk/WeexSDK/Sources/Component/WXTextComponent.m
index deeddd6..f3fbd93 100644
--- a/ios/sdk/WeexSDK/Sources/Component/WXTextComponent.m
+++ b/ios/sdk/WeexSDK/Sources/Component/WXTextComponent.m
@@ -116,6 +116,8 @@ CGFloat WXTextDefaultLineThroughWidth = 1.2;
CGFloat _lineHeight;
CGFloat _letterSpacing;
BOOL _truncationLine; // support trunk tail
+
+ BOOL _needsRemoveObserver;
}
+ (void)setRenderUsingCoreText:(BOOL)usingCoreText
@@ -138,6 +140,7 @@ CGFloat WXTextDefaultLineThroughWidth = 1.2;
self = [super initWithRef:ref type:type styles:styles attributes:attributes events:events weexInstance:weexInstance];
if (self) {
// just for coretext and textkit render replacement
+ _needsRemoveObserver = NO;
if ([attributes objectForKey:@"coretext"]) {
_useCoreTextAttr = [WXConvert NSString:attributes[@"coretext"]];
} else {
@@ -169,7 +172,9 @@ CGFloat WXTextDefaultLineThroughWidth = 1.2;
- (void)dealloc
{
- [[NSNotificationCenter defaultCenter] removeObserver:self];
+ if (_needsRemoveObserver) {
+ [[NSNotificationCenter defaultCenter] removeObserver:self name:WX_ICONFONT_DOWNLOAD_NOTIFICATION object:nil];
+ }
}
#define WX_STYLE_FILL_TEXT(key, prop, type, needLayout)\
@@ -365,6 +370,7 @@ do {\
//custom localSrc is cached
if (!fontLocalSrc && fontSrc) {
// if use custom font, when the custom font download finish, refresh text.
+ _needsRemoveObserver = YES;
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(repaintText:) name:WX_ICONFONT_DOWNLOAD_NOTIFICATION object:nil];
}
}
@@ -443,6 +449,7 @@ do {\
//custom localSrc is cached
if (!fontLocalSrc && fontSrc) {
// if use custom font, when the custom font download finish, refresh text.
+ _needsRemoveObserver = YES;
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(repaintText:) name:WX_ICONFONT_DOWNLOAD_NOTIFICATION object:nil];
}
}