我正在编程Objective C
。我有一个UITableView
withUILabel
的。如何检测 a 中的省略号UILabel
?
问问题
2409 次
3 回答
8
首先,我们可以获得将在标签中呈现的文本的宽度。然后我们可以将该宽度与标签的宽度进行比较。如果该宽度超过,则字符串将被截断,否则不会。
更新
如果标签有行,则计算行数并检查 lablewidth*numofLines
UILabel *lblAppTitle = (UILabel*)[self.view viewWithTag:777];
CGSize stringSize = [lblAppTitle.text sizeWithFont:lblAppTitle.font];
//Count Number of lines
[lblAppTitle sizeToFit];
int numLines = (int)(lblAppTitle.frame.size.height/lblAppTitle.font.leading);
if (stringSize.width > (lblAppTitle.frame.size.width)*numLines)
NSLog(@"truncated string");
else
NSLog(@"did not truncate string");
希望这对您有所帮助。
于 2013-03-21T06:17:06.270 回答
-1
NSString *str = @"Hello this is the ...";
NSRange range = [str rangeOfString:@"..."];
if (range.location>0 && range.length == 3) {
//Found
}
希望这会帮助你。
于 2013-03-21T06:03:45.683 回答
-1
UILabel *lbl ;
lbl.text = @"Hello..World.";
NSString * charToCount = @".";
NSArray * array = [lbl.text componentsSeparatedByString:charToCount];
if([array count] >= 3)
NSLog(@"Found");
else
NSLog(@"Not Found");
希望对你有帮助...
于 2013-03-21T06:14:41.517 回答