iOS 7 属性字符串绘制方法中的 NSLineBreakMode 等价物是什么?

What is the equivalent of NSLineBreakMode in iOS 7 attributed strings drawing methods?(iOS 7 属性字符串绘制方法中的 NSLineBreakMode 等价物是什么?)

本文介绍了iOS 7 属性字符串绘制方法中的 NSLineBreakMode 等价物是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

There was a method

- (CGSize)drawInRect:(CGRect)rect withFont:(UIFont *)font lineBreakMode:(NSLineBreakMode)lineBreakMode alignment:(NSTextAlignment)alignment;

which I must replace now for iOS 7. I get as far as

NSDictionary *attributes = @{NSFontAttributeName: font};
[self drawInRect:rect withAttributes:attributes];

but how to specify the line break mode like word wrap? I searched documentation of Attributed string drawing symbols but no mention of line break mode. Is this automartically always word-wrap?

解决方案

You need to create a paragraph style.

NSMutableParagraphStyle *style = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];
[style setLineBreakMode:NSLineBreakByWordWrapping];

NSDictionary *attributes = @{NSFontAttributeName: font, NSParagraphStyleAttributeName: style};
[self drawInRect:rect withAttributes:attributes];

More information here: https://developer.apple.com/documentation/uikit/nsparagraphstyle?language=objc

这篇关于iOS 7 属性字符串绘制方法中的 NSLineBreakMode 等价物是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:iOS 7 属性字符串绘制方法中的 NSLineBreakMode 等价物是什么?

基础教程推荐