Я не знаю, если вы собираетесь использовать это в прикосновении какао. если это так, то:
- (CGFloat)widthOfString:(NSString *)string withFont:(NSFont *)font {
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:font, NSFontAttributeName, nil];
return [[[NSAttributedString alloc] initWithString:string attributes:attributes] size].width;
}
не будет работать.
в какао Touch, вы должны добавить coretext framework и импортировать заголовок
и напишите свой код так:
UIFont *font = [UIFont fontWithName:@"HelveticaNeue-BoldItalic" size:DEFAULT_FONT_SIZE];
// NSLog(@"%@", NSFontAttributeName);
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:font, (NSString *)kCTFontAttributeName, nil];
но, Джи !!!!!
NSMutableAttributedString *as = [[NSMutableAttributedString alloc] initWithString:self.caption attributes:attributes];
[as size].width;
размер этого метода в NSMutableAttributedString отсутствует!
наконец, это будет работать
[self.caption sizeWithFont:font].width