【发布时间】:2017-04-24 08:36:39
【问题描述】:
我正在使用TTTAttributedLabel 制作UILabel 超链接,我正在尝试这样做:
NSAttributedString *attString = [[NSAttributedString alloc] initWithString:@"By tapping you agree to the Terms of Use and Privacy Policy."
attributes:@{
(id)kCTForegroundColorAttributeName : (id)[UIColor redColor].CGColor,
NSFontAttributeName : [UIFont boldSystemFontOfSize:16],
NSKernAttributeName : [NSNull null],
(id)kTTTBackgroundFillColorAttributeName : (id)[UIColor greenColor].CGColor
}];
// The attributed string is directly set, without inheriting any other text
// properties of the label.
self.tttTermAndCondition.text = attString;
self.tttTermAndCondition.delegate = self; // Delegate methods are called when the user taps on a link (see `TTTAttributedLabelDelegate` protocol)
//self.tttTermAndCondition.text = @"Fork me on GitHub! (http://github.com/mattt/TTTAttributedLabel/)"; // Repository URL will be automatically detected and linked
self.tttTermAndCondition.enabledTextCheckingTypes = NSTextCheckingTypeLink;
NSRange range = [self.tttTermAndCondition.text rangeOfString:@"Terms of Use"];
[self.tttTermAndCondition addLinkToURL:[NSURL URLWithString:@"http://github.com/mattt/"] withRange:range];
这显示得很好,但是当我点击使用条款时,
TTTAtributedLabel 在它的 - (NSArray *) links 方法中崩溃,它变成了一个僵尸对象。
我不知道我到底错过了什么。
提前致谢。
【问题讨论】:
-
你能显示崩溃报告吗
-
是的,请稍等。
-
这是我点击 *** -[__NSSingleObjectArrayI valueForKey:]: message sent to deallocated instance 0x178010a40 时得到的结果
-
嗯,我正在使用与其他人一起运行良好的库,所以我认为不必对他们的库进行任何更改,可以肯定我在使用它时做错了什么。跨度>
标签: ios objective-c tttattributedlabel tttattritubedlabel