首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSString sizeWithFont反转

NSString sizeWithFont反转
EN

Stack Overflow用户
提问于 2011-12-16 00:49:27
回答 2查看 278关注 0票数 0

我们有这个函数:

代码语言:javascript
复制
CGSize size = [cell.textLabel.text sizeWithFont:cell.textLabel.font constrainedToSize:CGSizeMake(cellWidth, FLT_MAX)];

我们可以反转使用它吗?我想要看到文本,它可以是这个大小与我的字体。你有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-16 16:52:39

我找到了很好的解决方案:

代码语言:javascript
复制
- (NSString*)stringVisibleInRect:(CGRect)rect inString:(NSString *)string {
    NSArray *words = [string componentsSeparatedByString:@" "];
    NSString *testString = [[NSString alloc] init];
    NSString *visibleString = @"";
    for (int i = 0; i < [words count] && [words count] > 0; i++)
    {
        NSString *newString = (NSString *)[words objectAtIndex:i];
        testString =[testString stringByAppendingFormat:@"%@ ",newString];

        CGSize maximumSize = CGSizeMake(rect.size.width, 9999);

        CGSize stringSize = [testString sizeWithFont:font
                                   constrainedToSize:maximumSize 
                                       lineBreakMode:UILineBreakModeWordWrap];

        if (stringSize.height > rect.size.height) // || stringSize.width > rect.size.width)
            break;

        visibleString = testString;
    }
    words = nil;
    return visibleString;
}
票数 1
EN

Stack Overflow用户

发布于 2011-12-16 01:16:57

你是说像CTFramesetterSuggestFrameSizeWithConstraints那样?在某些约束的情况下,它可以用来使文本范围可见。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8523653

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档