fix(ios): properties lineHeight and letterSpacing did not apply to spans (#10025)

This commit is contained in:
Dimitris-Rafail Katsampas
2022-09-14 08:17:50 +03:00
committed by GitHub
parent 1ad8099cd8
commit e4b5cdf7df
5 changed files with 9 additions and 11 deletions

View File

@@ -8,6 +8,6 @@
- (void)nativeScriptSetTextDecorationAndTransform:(NSString*)text textDecoration:(NSString*)textDecoration letterSpacing:(CGFloat)letterSpacing lineHeight:(CGFloat)lineHeight;
-(void)nativeScriptSetFormattedTextDecorationAndTransform:(NSDictionary*)details;
-(void)nativeScriptSetFormattedTextDecorationAndTransform:(NSDictionary*)details letterSpacing:(CGFloat)letterSpacing lineHeight:(CGFloat)lineHeight;
@end

View File

@@ -75,9 +75,7 @@
}
}
-(void)nativeScriptSetFormattedTextDecorationAndTransform:(NSDictionary*)details {
CGFloat letterSpacing = [[details valueForKey:@"letterSpacing"] doubleValue];
CGFloat lineHeight = [[details valueForKey:@"lineHeight"] doubleValue];
-(void)nativeScriptSetFormattedTextDecorationAndTransform:(NSDictionary*)details letterSpacing:(CGFloat)letterSpacing lineHeight:(CGFloat)lineHeight {
NSMutableAttributedString *attrText = [NativeScriptUtils createMutableStringWithDetails:details];
if (letterSpacing != 0) {
NSNumber *kern = [NSNumber numberWithDouble:letterSpacing * ((UITextView*)self).font.pointSize];
@@ -89,7 +87,7 @@
if (lineHeight > 0) {
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
paragraphStyle.minimumLineHeight = lineHeight;
paragraphStyle.lineSpacing = lineHeight;
// make sure a possible previously set text alignment setting is not lost when line height is specified
if ([self isKindOfClass:[UIButton class]]) {
paragraphStyle.alignment = ((UIButton*)self).titleLabel.textAlignment;