Files
real-e-party-iOS/YuMi/Modules/YMLogin/View/NewLogin/PIUserSexView.m
2025-10-17 14:03:50 +08:00

128 lines
4.4 KiB
Objective-C

//
// PIUserSexView.m
// YuMi
//
// Created by duoban on 2023/8/14.
//
#import "PIUserSexView.h"
@interface PIUserSexView ()
///背景
@property (nonatomic,strong) UIImageView *backImageView;
///头像
@property (nonatomic,strong) UIImageView *logoImageView;
///性别图标
@property (nonatomic,strong) UIImageView *sexImageView;
///性别
@property (nonatomic,strong) UILabel *sexLb;
@end
@implementation PIUserSexView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
- (void)initSubViews {
[self addSubview:self.backImageView];
[self.backImageView addSubview:self.logoImageView];
[self.backImageView addSubview:self.sexLb];
[self.backImageView addSubview:self.sexImageView];
}
- (void)initSubViewConstraints {
[self.backImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self);
}];
[self.logoImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(kGetScaleWidth(66), kGetScaleWidth(66)));
make.centerX.mas_equalTo(self.backImageView);
make.top.mas_equalTo(self.backImageView).offset(kGetScaleWidth(8));
}];
[self.sexImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(kGetScaleWidth(16), kGetScaleWidth(16)));
make.trailing.mas_equalTo(self.backImageView.mas_centerX).offset(-1.5);
make.top.mas_equalTo(self.logoImageView.mas_bottom).offset(kGetScaleWidth(8));
}];
[self.sexLb mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.mas_equalTo(self.backImageView.mas_centerX).offset(1.5);
make.centerY.mas_equalTo(self.sexImageView);
}];
}
- (void)setGender:(NSInteger)gender {
_gender = gender;
if (_gender == 1) { // 男性
self.logoImageView.image = [UIImage imageNamed:@"login_full_male_logo"];
self.sexLb.text = YMLocalizedString(@"PIUserSexView0");
self.sexImageView.image = [UIImage imageNamed:@"login_full_male"];
} else if (_gender == 2) { // 女性
self.logoImageView.image = [UIImage imageNamed:@"login_full_female_logo"];
self.sexLb.text = YMLocalizedString(@"PIUserSexView1");
self.sexImageView.image = [UIImage imageNamed:@"login_full_female"];
}
}
- (void)setSelected:(BOOL)selected {
_selected = selected;
if (_selected) {
if (self.gender == 1) { // 男性
self.backImageView.image = [UIImage gradientColorImageFromColors:@[[DJDKMIMOMColor colorWithHexString:@"#EBF5FF"],[DJDKMIMOMColor colorWithHexString:@"#FFFFFF"]] gradientType:GradientTypeTopToBottom imgSize:CGSizeMake(10, 10)];
self.backImageView.layer.borderColor = [DJDKMIMOMColor colorWithHexString:@"#B8E5FF"].CGColor;
} else { // 女性
self.backImageView.image = [UIImage gradientColorImageFromColors:@[[DJDKMIMOMColor colorWithHexString:@"#FFEBFA"],[DJDKMIMOMColor colorWithHexString:@"#FFFFFF"]] gradientType:GradientTypeTopToBottom imgSize:CGSizeMake(10, 10)];
self.backImageView.layer.borderColor = [DJDKMIMOMColor colorWithHexString:@"#FFB8E2"].CGColor;
}
} else {
self.backImageView.image = [UIImage imageWithColor:[UIColor clearColor]];
self.backImageView.layer.borderColor = [DJDKMIMOMColor colorWithHexString:@"#FAFBFC"].CGColor;
}
}
- (UIImageView *)backImageView {
if (!_backImageView) {
_backImageView = [[UIImageView alloc] init];
_backImageView.userInteractionEnabled = YES;
_backImageView.layer.masksToBounds = YES;
_backImageView.layer.borderWidth = 1;
_backImageView.layer.cornerRadius = kGetScaleWidth(18);
}
return _backImageView;
}
- (UIImageView *)logoImageView {
if (!_logoImageView) {
_logoImageView = [[UIImageView alloc] init];
_logoImageView.userInteractionEnabled = YES;
}
return _logoImageView;
}
- (UIImageView *)sexImageView {
if (!_sexImageView) {
_sexImageView = [[UIImageView alloc] init];
_sexImageView.userInteractionEnabled = YES;
}
return _sexImageView;
}
- (UILabel *)sexLb {
if (!_sexLb) {
_sexLb = [[UILabel alloc] init];
_sexLb.font = kFontMedium(14);
_sexLb.textColor = [DJDKMIMOMColor colorWithHexString:@"#1F1A4E"];
}
return _sexLb;
}
@end