大家。
我一直在我的iOS应用上使用TTTAttributedLabel,我使用addLinkToURL:withRange:方法。但是,有时候,TTTAttributedLabel的touchesBegan不会被调用。
这是我的代码。这段代码外表工作正常。但是,有时,不会调用TTTAttributedLabel的委托方法。所以,我检查失败的原因,我发现TTTAttributedLabel的touchesBegan有时候不会被调用。当点击标签的上半部分时,会触摸touchesBegan。但是,当标签的底部被轻敲时,它不会被调用。
我不知道为什么......
请帮帮我......
这是cellForRowAtIndexPath:方法。 messageLabel是TTTAttributedLabel的一个实例。
if (indexPath.row == 0) {
cell = (MMTweetCell *)[tableView dequeueReusableCellWithIdentifier:TweetCellIdentifier];
if (cell == nil) {
UINib* nib = [UINib nibWithNibName:@"MMTweetCells" bundle:nil];
NSArray* array = [nib instantiateWithOwner:nil options:nil];
cell = [array objectAtIndex:0];
}
cell.messageLabel.delegate = self;
cell.messageLabel.text = self.item.message;
cell.messageLabel.enabledTextCheckingTypes = NSTextCheckingTypeLink;
for (NSDictionary* dic in self.linkArray) {
[cell.messageLabel addLinkToURL:[NSURL URLWithString:dic[@"url"]] withRange:[dic[@"range"] rangeValue]];
}
[cell.messageLabel sizeToFit];
return cell;
}
heightForRowAtIndexPath:
if (indexPath.row == 0) {
height = margin;
if (self.item && self.item.message) {
UINib* nib = [UINib nibWithNibName:@"MMTweetCells" bundle:nil];
NSArray* array = [nib instantiateWithOwner:nil options:nil];
MMTweetCell* cell = (MMTweetCell *)[array objectAtIndex:0];
cell.messageLabel.text = self.item.message;
[cell.messageLabel sizeToFit];
height += cell.messageLabel.frame.size.height;
}
return height;
}
感谢。