Text add fontStype property

This commit is contained in:
pengfei.zhou
2020-01-14 19:50:32 +08:00
committed by osborn
parent e8a5c796bd
commit c92435f1e0
13 changed files with 133 additions and 1 deletions

View File

@@ -36,7 +36,12 @@ - (void)blendView:(UILabel *)view forPropName:(NSString *)name propValue:(id)pro
if ([name isEqualToString:@"text"]) {
view.text = prop;
} else if ([name isEqualToString:@"textSize"]) {
view.font = [UIFont systemFontOfSize:[(NSNumber *) prop floatValue]];
UIFont *font = view.font;
if (font) {
view.font = [view.font fontWithSize:[(NSNumber *) prop floatValue]];
} else {
view.font = [UIFont systemFontOfSize:[(NSNumber *) prop floatValue]];
}
} else if ([name isEqualToString:@"textColor"]) {
view.textColor = DoricColor(prop);
} else if ([name isEqualToString:@"textAlignment"]) {
@@ -50,6 +55,23 @@ - (void)blendView:(UILabel *)view forPropName:(NSString *)name propValue:(id)pro
view.textAlignment = alignment;
} else if ([name isEqualToString:@"maxLines"]) {
view.numberOfLines = [prop integerValue];
} else if ([name isEqualToString:@"fontStyle"]) {
UIFont *font = view.font;
if (!font) {
font = [UIFont systemFontOfSize:[UIFont systemFontSize]];
}
UIFontDescriptor *fontDescriptor = nil;
if ([@"bold" isEqualToString:prop]) {
fontDescriptor = [font.fontDescriptor fontDescriptorWithSymbolicTraits:UIFontDescriptorTraitBold];
} else if ([@"italic" isEqualToString:prop]) {
fontDescriptor = [font.fontDescriptor fontDescriptorWithSymbolicTraits:UIFontDescriptorTraitItalic];
} else if ([@"bold_italic" isEqualToString:prop]) {
fontDescriptor = [font.fontDescriptor fontDescriptorWithSymbolicTraits:UIFontDescriptorTraitBold | UIFontDescriptorTraitItalic];
}
if (fontDescriptor) {
font = [UIFont fontWithDescriptor:fontDescriptor size:0];
}
view.font = font;
} else {
[super blendView:view forPropName:name propValue:prop];
}