NumLockButton.m 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. //
  2. // NumLockButton.m
  3. // numLockTest
  4. //
  5. // Created by banbu01 on 15-2-5.
  6. // Copyright (c) 2015年 com.koochat.test0716. All rights reserved.
  7. //
  8. #import "NumLockButton.h"
  9. #import "UIImage+Color.h"
  10. @implementation NumLockButton
  11. - (instancetype)initWithNumber:(NSUInteger)number letters:(NSString *)letters
  12. {
  13. self = [super init];
  14. if (self)
  15. {
  16. _number = number;
  17. _letters = letters;
  18. [self setBackgroundImage:nil forState:UIControlStateNormal];
  19. [self setBackgroundImage:[UIImage createImageWithColor:[UIColor lightGrayColor]] forState:UIControlStateHighlighted];
  20. // self.backgroundColor = [UIColor blueColor];
  21. self.layer.cornerRadius = 64.0 / 2.0f;
  22. self.layer.borderWidth = 1.0f;
  23. self.layer.masksToBounds = YES;
  24. self.layer.borderColor = [[UIColor lightGrayColor]CGColor];
  25. // [self setTitle:[NSString stringWithFormat:@"%lu",number] forState:UIControlStateNormal];
  26. _numberLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 13, 64, 23)];
  27. _numberLabel.text = [NSString stringWithFormat:@"%lu", (unsigned long)number];
  28. _numberLabel.backgroundColor = [UIColor clearColor];
  29. _numberLabel.textAlignment = NSTextAlignmentCenter;
  30. _numberLabel.font = [UIFont systemFontOfSize:30.0f];
  31. [self addSubview:_numberLabel];
  32. if (letters)
  33. {
  34. _lettersLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 41, 64, 10)];
  35. _lettersLabel.text = letters;
  36. _lettersLabel.textAlignment = NSTextAlignmentCenter;
  37. _lettersLabel.font = [UIFont systemFontOfSize:9.0f];
  38. [self addSubview:_lettersLabel];
  39. }
  40. //
  41. // [self tintColorDidChange];
  42. }
  43. return self;
  44. }
  45. - (void)pressed:(UIButton *)sender
  46. {
  47. }
  48. - (void)tintColorDidChange
  49. {
  50. self.layer.borderColor = [self.tintColor CGColor];
  51. self.numberLabel.textColor = self.tintColor;
  52. self.lettersLabel.textColor = self.tintColor;
  53. }
  54. /*
  55. // Only override drawRect: if you perform custom drawing.
  56. // An empty implementation adversely affects performance during animation.
  57. - (void)drawRect:(CGRect)rect {
  58. // Drawing code
  59. }
  60. */
  61. @end