- (CGSize)boundingRectWithSize:(CGSize)size text:(NSString *)text fount:(UIFont *)font
{
NSDictionary *attribute = @{NSFontAttributeName: font};
CGSize retSize = [text boundingRectWithSize:size options:NSStringDrawingTruncatesLastVisibleLine | NSStringDrawingUsesLineFragmentOrigin NSStringDrawingUsesFontLeading attributes:attribute context:nil].size;
return retSize;
}
-(CGSize)sizeWithString:(NSString *)text size:(CGSize)size font:(UIFont)font
{
CGSize size = [text sizeWithFont:font constrainedToSize:size lineBreakMode:NSLineBreakByWordWrapping];
return size;
}
+ (void)labelLineSpace:(UILabel *)label text:(NSString *)text Value:(CGFloat)value
{
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:text];
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
[paragraphStyle setLineSpacing:value];
[attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [text length])];
label.attributedText = attributedString;
[label sizeToFit];
}
-
Label的边框宽度粗细不一致处理
- 如果设置了
label.layer.border.width 为某一值,在不能的屏幕上显示的效果可能完全不一样,比如我之前做项目是设置了 border.width = 0.6,然后在6s上显示时粗细不一致,下面这方法可以解决这个问题。
CGFloat scale = [[UIScreen mainScreen] scale];
CGFloat width = scale > 0.0 ? 1.0 / scale : 1.0;
[self.layer setBorderWidth:width];
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。