Вы можете унаследовать UIButton:
//.h
@interface MySpecialButton : UIButton {
int mySpecialAttribute;
}
@property (nonatomic) int mySpecialAttribute;
- (void) setBackgroundImage;
- (UIImage*) getImage;
@end
И использовать свой специальный атрибут, чтобы установить и вернуть имя изображения:
//.m
@implementation LetterButton
@synthesize mySpecialAttribute;
- (void) setBackgroundImage {
[self setBackgroundImage:[self getImage] forState:UIControlStateNormal];
[self setBackgroundImage:[self getImage] forState:UIControlStateDisabled];
}
- (UIImage*) getImage {
NSString *fileName = [NSString stringWithFormat:
@"My_special_image_%i.png", mySpecialAttribute];
return [UIImage imageNamed:fileName];
}
@end
Установить класс кнопки в xib: