baseTableViewCell.m 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. //
  2. // baseTableViewCell.m
  3. // 双子星云手机
  4. //
  5. // Created by xd h on 2024/10/23.
  6. //
  7. #import "baseTableViewCell.h"
  8. @implementation baseTableViewCell
  9. - (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
  10. {
  11. self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
  12. if (self)
  13. {
  14. [self drawView];
  15. }
  16. return self;
  17. }
  18. - (void)drawView
  19. {
  20. _cellBgView = [[UIView alloc] init];
  21. [self.contentView addSubview:_cellBgView];
  22. _cellBgView.backgroundColor = [UIColor whiteColor];
  23. [_cellBgView mas_makeConstraints:^(MASConstraintMaker *make) {
  24. make.left.mas_equalTo(0.f);
  25. make.top.mas_equalTo(0);
  26. make.bottom.mas_equalTo(0);
  27. make.right.mas_equalTo(0);
  28. }];
  29. /*图片*/
  30. _mImageView = [[UIImageView alloc] init];
  31. [_mImageView setBackgroundColor:[UIColor clearColor]];
  32. //_mImageView.image = [UIImage imageNamed:@""];
  33. [_cellBgView addSubview:_mImageView];
  34. [_mImageView setContentMode:(UIViewContentModeScaleAspectFit)];
  35. [_mImageView mas_makeConstraints:^(MASConstraintMaker *make) {
  36. make.left.mas_equalTo(15);
  37. make.width.mas_equalTo(42);
  38. make.height.mas_equalTo(42);
  39. make.centerY.equalTo(self.mas_centerY);
  40. }];
  41. /**标题*/
  42. _titleLabel = [[UILabel alloc] init];
  43. [_cellBgView addSubview:_titleLabel];
  44. _titleLabel.font = [UIFont systemFontOfSize:12.f];
  45. _titleLabel.numberOfLines = 2;
  46. _titleLabel.lineBreakMode = NSLineBreakByTruncatingMiddle;
  47. [_titleLabel setTextColor:HW666666Color];
  48. [_titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
  49. make.left.equalTo(_mImageView.mas_right).offset(5.f);
  50. //make.right.equalTo(self.mas_centerX).offset(5.f);
  51. make.height.equalTo(_mImageView.mas_height);
  52. make.top.equalTo(_mImageView.mas_top);
  53. }];
  54. /**副标题*/
  55. _contentLabel = [[UILabel alloc] init];
  56. [_cellBgView addSubview:_contentLabel];
  57. _contentLabel.font = [UIFont systemFontOfSize:14.f];
  58. _contentLabel.lineBreakMode = NSLineBreakByTruncatingMiddle;
  59. [_contentLabel setTextAlignment:(NSTextAlignmentRight)];
  60. [_contentLabel setTextColor:HW0A132BColor];
  61. [_contentLabel mas_makeConstraints:^(MASConstraintMaker *make) {
  62. make.right.mas_equalTo(-20);
  63. //make.left.mas_equalTo(_titleLabel.mas_left);
  64. make.height.equalTo(_mImageView.mas_height);
  65. make.top.equalTo(_titleLabel.mas_top);
  66. }];
  67. /*右侧箭头*/
  68. _rightImage = [[UIImageView alloc] init];
  69. _rightImage.hidden = YES;
  70. [_rightImage setBackgroundColor:[UIColor clearColor]];
  71. [_rightImage setImage:[UIImage imageNamed:@"cell_right_access"]];
  72. [_cellBgView addSubview:_rightImage];
  73. [_rightImage mas_makeConstraints:^(MASConstraintMaker *make) {
  74. make.width.mas_equalTo(20);
  75. make.right.mas_equalTo(-20.f);
  76. make.height.mas_equalTo(20);
  77. make.centerY.equalTo(_cellBgView.mas_centerY);
  78. }];
  79. }
  80. - (void)setShowLeftImageType:(BOOL)showLeftImageType
  81. {
  82. //默认显示
  83. if(showLeftImageType) return;
  84. /**标题*/
  85. [_titleLabel mas_remakeConstraints:^(MASConstraintMaker *make) {
  86. make.left.mas_equalTo(15);
  87. //make.right.equalTo(self.mas_centerX).offset(5.f);
  88. make.height.equalTo(_mImageView.mas_height);
  89. make.top.equalTo(_mImageView.mas_top);
  90. }];
  91. }
  92. - (void)setShowRightImageType:(BOOL)showRightImageType
  93. {
  94. if(showRightImageType){
  95. _rightImage.hidden = NO;
  96. [_contentLabel mas_remakeConstraints:^(MASConstraintMaker *make) {
  97. make.right.equalTo(_rightImage.mas_left).offset(-5);
  98. //make.left.mas_equalTo(_titleLabel.mas_left);
  99. make.height.equalTo(_mImageView.mas_height);
  100. make.top.equalTo(_titleLabel.mas_top);
  101. }];
  102. }
  103. else{
  104. _rightImage.hidden = YES;
  105. [_contentLabel mas_remakeConstraints:^(MASConstraintMaker *make) {
  106. make.right.equalTo(_rightImage.mas_right).offset(0);
  107. //make.left.mas_equalTo(_titleLabel.mas_left);
  108. make.height.equalTo(_mImageView.mas_height);
  109. make.top.equalTo(_titleLabel.mas_top);
  110. }];
  111. }
  112. }
  113. @end