【发布时间】:2014-11-25 07:57:10
【问题描述】:
我们如何从中间截断来自 NSString 的子字符串 假设,我有 NSString NSString *str = @"2014 年 11 月 25 日星期四 /Shared/Documents/Drawing/c" 我想从中间截断路径字符串并在标签上显示。为此我在标签上使用 NSStrinbuteString
NSString *path = @"/Shared/Documents/Drawing/c";
NSString *date = @"Thu 25 Nov 2014";
NSString *wholeString = self.descLabel.text;
NSRange pathRange = [wholeString rangeOfString:path];
NSRange range=NSMakeRange(pathRange.location,path.length);
NSMutableParagraphStyle* style= [NSMutableParagraphStyle new];
style.lineBreakMode= NSLineBreakByTruncatingMiddle;
NSMutableAttributedString* str=[[NSMutableAttributedString alloc]initWithString: self.descLabel.text];
[str addAttribute: NSParagraphStyleAttributeName value: style range: range];
self.descLabel.attributedText= str;
这似乎没有做任何事情。有人建议我是否做错了什么
【问题讨论】:
-
如果是 UILabel,为什么不直接在 UIlabel 上设置 linebreakmode 而是作为简单的文本,而不使用属性字符串?
标签: ios uilabel nsattributedstring