NSMutableAttributedString怎么设置label的行间距
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NSMutableAttributedString怎么设置label的行间距相关的知识,希望对你有一定的参考价值。
标签控件用来显示不希望被用户修改的文本.\r\n其属性有Caption、BorderStyle、Alignment(主要用于屏幕显示),还有:\r\n AutoSize:Label控件调整自己的大小来适应文本。\r\n WordWrap:当一行文本过长时自动换行。 参考技术A CGFloat lineSpacing = 2.0;CTParagraphStyleSetting paragraphStyles[9] =
.spec = kCTParagraphStyleSpecifierLineSpacing, .valueSize = sizeof(CGFloat), .value = (const void *)&lineSpacing
;
CTParagraphStyleRef paragraphStyle = CTParagraphStyleCreate(paragraphStyles, 9);
[mutableAttributes setObject:(id)paragraphStyle forKey:(NSString *)kCTParagraphStyleAttributeName];
CFRelease(paragraphStyle);
NSDictionary* attDic = [NSDictionary dictionaryWithDictionary:mutableAttributes];
[str addAttributes: attDic range:NSMakeRange(0, [str length])];
设置行间距属性kCTParagraphStyleSpecifierLineSpacing
可能带有 NSMutableAttributedString 的 iOS MKAnnotation 字幕
【中文标题】可能带有 NSMutableAttributedString 的 iOS MKAnnotation 字幕【英文标题】:iOS MKAnnotation subtitle with NSMutableAttributedString possible 【发布时间】:2014-05-20 16:10:49 【问题描述】:我正在尝试让 MKAnnotation 字幕具有彩色文本,但我无法使用 NSMutableAttributedString 实现。
有人知道如何实现吗?
我当前的代码:
customAnn.h
interface MapAnnotation : NSObject <MKAnnotation>
@property (nonatomic, copy) NSString *title;
@property (nonatomic, copy) NSString *subtitle;
@end
customAnn.m
@implementation MapAnnotation
- (NSString *)title
return @"Some Title";
- (NSString *)subtitle
NSMutableAttributedString *subPart = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"%@ ", [[[data valueForKey:@"16"] sortedArrayUsingSelector: @selector(localizedStandardCompare:)] componentsJoinedByString:@" "]]];
[subPart addAttribute:NSForegroundColorAttributeName value:[UIColor colorWithRed:20/225.0 green:30/255.0 blue:15/255.0 alpha:1] range:NSMakeRange(0, subPart.length)];
return subPart;
@end
目前代码不工作,因为 - (NSString *)subtitle
想要 NSString
但得到 NSMutableAttributedString
- 它崩溃,但如果更改为 - (NSMutableAttributedString *)subtitle
我什至无法编译。
我不知道如何实现这一点。
谢谢。
【问题讨论】:
给我们一些代码示例,以便我们为您提供帮助。 【参考方案1】:我认为您无法使用股票 MKAnnotation 来做到这一点。我会创建自己的自定义注释视图,这样您就可以根据需要自定义视图。
这是一个很好的教程:
http://blog.asynchrony.com/2010/09/building-custom-map-annotation-callouts-part-1/
【讨论】:
以上是关于NSMutableAttributedString怎么设置label的行间距的主要内容,如果未能解决你的问题,请参考以下文章
富文本(NSMutableAttributedString)
在 NSMutableAttributedString 上模拟“initWithAttributedString”的 OCMock 失败