使label字体上下偏移

需求:近日用到倒计时字体 :

@"DBLCDTempBlack"


大致看没啥问题,可是UI来找茬了,说字体向上偏移了一像素,需要向下挪回来;

找了半天没发现label这样的功能,最后还是用 AttributedText 解决了

用到属性 : NSBaselineOffsetAttributeName   可设置 上下偏移的距离(同时联想到,一个label如何设置大小不同,位置也不同的字体)

代码:

    NSAttributedString * att1 = [[NSAttributedString alloc] initWithString:_yearLabel.text attributes:@{NSFontAttributeName: _yearLabel.font,NSBaselineOffsetAttributeName:@(-1)}];
    [_yearLabel setAttributedText:att1];
    
    NSAttributedString * att2 = [[NSAttributedString alloc] initWithString:_hoursLabel.text attributes:@{NSFontAttributeName: _hoursLabel.font,NSBaselineOffsetAttributeName:@(-1)}];
    [_hoursLabel setAttributedText:att2];
    
    NSAttributedString * att3 = [[NSAttributedString alloc] initWithString:_minuteLabel.text attributes:@{NSFontAttributeName: _minuteLabel.font,NSBaselineOffsetAttributeName:@(-1)}];
    [_minuteLabel setAttributedText:att3];
    
    NSAttributedString * att4 = [[NSAttributedString alloc] initWithString:_secondLabel.text attributes:@{NSFontAttributeName: _secondLabel.font,NSBaselineOffsetAttributeName:@(-1)}];
    [_secondLabel setAttributedText:att4];


完美!

你可能感兴趣的:(技巧)