Кажется, что самым простым решением было бы, чтобы ваш UIImage
сидел позади вашего UILabel
, а ваш UILabel
имел прозрачный фоновый цвет.
Редактировать
Предполагается, что вы используете ARC ...
SBLabel.h
#import <UIKit/UIKit.h>
@interface SBLabel : UILabel
@property (nonatomic, strong) UIImageView *nonRepeatingBackgroundImage;
@end
SBLabel.m
#import "SBLabel.h"
@implementation SBLabel
@synthesize nonRepeatingBackgroundImage;
- (void)setNonRepeatingBackgroundImage:(UIImageView *)aNonRepeatingBackgroundImage {
nonRepeatingBackgroundImage = aNonRepeatingBackgroundImage;
[self addSubview:aNonRepeatingBackgroundImage];
[self sendSubviewToBack:aNonRepeatingBackgroundImage];
[self setBackgroundColor:[UIColor clearColor]];
}
@end
Вам потребуется вызвать этот метод установки после добавления UILabel в родительское представление.Я не тестировал, но считаю, что он должен работать, может потребоваться некоторые настройки, но, надеюсь, он объясняет, как создать подкласс UILabel для пользовательского улучшения, такого как этот.