Files
peko-ios/YuMi/Modules/YMLogin/View/LoginFullInfoViewController.m

497 lines
17 KiB
Mathematica
Raw Normal View History

2023-07-14 18:50:55 +08:00
//
// LoginFullInfoViewController.m
// YUMI
//
// Created by YUMI on 2021/9/14.
//
#import "LoginFullInfoViewController.h"
///Third
#import <Masonry/Masonry.h>
#import <ReactiveObjC/ReactiveObjC.h>
///Tool
#import "YUMIMacroUitls.h"
#import "DJDKMIMOMColor.h"
#import "UIImage+Utils.h"
#import "UIButton+EnlargeTouchArea.h"
#import "StatisticsServiceHelper.h"
#import "AccountInfoStorage.h"
#import "TTPopup.h"
2023-08-14 14:39:41 +08:00
#import "PIUserSexView.h"
2023-07-14 18:50:55 +08:00
///Model
#import "ThirdUserInfo.h"
///P
#import "LoginFullInfoPresenter.h"
#import "LoginFullInfoProtocol.h"
2023-10-07 18:42:30 +08:00
#import "PILoginManager.h"
2024-03-20 19:55:26 +08:00
#import "ClientConfig.h"
2023-07-14 18:50:55 +08:00
@interface LoginFullInfoViewController ()<LoginFullInfoProtocol>
2023-08-14 14:39:41 +08:00
///
@property(nonatomic,strong) UIImageView *bgImageView;
///
@property(nonatomic,strong) UIView *bgView;
2023-07-14 18:50:55 +08:00
///
@property (nonatomic,strong) UILabel *titleLabel;
///
@property (nonatomic,strong) UILabel *remindLabel;
///
@property (nonatomic,strong) UIView * backView;
2023-08-14 14:39:41 +08:00
2023-07-14 18:50:55 +08:00
///
@property (nonatomic,strong) UILabel *nameLabel;
///
2024-04-18 18:37:21 +08:00
@property (nonatomic,strong) MSBaseTextField *textField;
2023-07-14 18:50:55 +08:00
///
@property (nonatomic,strong) UIButton *refreshButton;
///x
@property (nonatomic,strong) UIStackView *sexStackView;
///
2023-08-14 14:39:41 +08:00
@property (nonatomic,strong) PIUserSexView *maleView;
2023-07-14 18:50:55 +08:00
///
2023-08-14 14:39:41 +08:00
@property (nonatomic,strong) PIUserSexView*femaleView;
2023-07-14 18:50:55 +08:00
///
@property (nonatomic,strong) UIButton *nextButton;
2023-08-14 14:39:41 +08:00
2023-07-14 18:50:55 +08:00
///
@property (nonatomic,strong) UIView *codeContainView;
///
2024-04-18 18:37:21 +08:00
@property (nonatomic,strong) MSBaseTextField *codeTextField;
2023-08-14 14:39:41 +08:00
2023-07-14 18:50:55 +08:00
///
@property (nonatomic,strong) ThirdUserInfo *thirdInfo;
///
@property (nonatomic,copy) NSString *sexString;
@end
@implementation LoginFullInfoViewController
- (BOOL)isHiddenNavBar {
return YES;
}
- (LoginFullInfoPresenter *)createPresenter {
return [[LoginFullInfoPresenter alloc] init];
}
- (void)viewDidLoad {
[super viewDidLoad];
[self initSubViews];
[self initSubViewConstraints];
[self initEvents];
2024-03-20 19:55:26 +08:00
ClientConfig *config = [ClientConfig shareConfig];
if (config.inviteCode.length > 0){
self.inviteCode = config.inviteCode;
config.inviteCode = @"";
}
2023-07-14 18:50:55 +08:00
}
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
[self.view endEditing:YES];
}
#pragma mark - Private Method
- (void)initSubViews {
2023-08-14 14:39:41 +08:00
self.view.backgroundColor = [UIColor whiteColor];
[self.view addSubview:self.bgImageView];
2023-07-14 18:50:55 +08:00
[self.view addSubview:self.titleLabel];
2023-08-14 14:39:41 +08:00
[self.view addSubview:self.bgView];
[self.bgView addSubview:self.remindLabel];
[self.bgView addSubview:self.sexStackView];
[self.bgView addSubview:self.backView];
2023-07-14 18:50:55 +08:00
[self.view addSubview:self.codeContainView];
[self.view addSubview:self.nextButton];
2023-08-14 14:39:41 +08:00
[self.backView addSubview:self.textField];
[self.backView addSubview:self.refreshButton];
[self.backView addSubview:self.nameLabel];
2023-07-14 18:50:55 +08:00
2023-08-14 14:39:41 +08:00
[self.sexStackView addArrangedSubview:self.maleView];
[self.sexStackView addArrangedSubview:self.femaleView];
2023-07-14 18:50:55 +08:00
[self.codeContainView addSubview:self.codeTextField];
2023-08-14 14:39:41 +08:00
2023-07-14 18:50:55 +08:00
if ([self.presenter getThirdUserInfo] && [self.presenter getThirdUserInfo].userName.length > 0) {
self.textField.text = [self.presenter getThirdUserInfo].userName;
} else {
[self.presenter randomRequestNick];
}
}
- (void)initSubViewConstraints {
2023-08-14 14:39:41 +08:00
[self.bgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
2024-04-11 17:05:27 +08:00
make.leading.trailing.top.equalTo(self.view);
2023-08-14 14:39:41 +08:00
make.height.mas_equalTo(kGetScaleWidth(418));
}];
[self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(self.view);
make.top.mas_equalTo(kGetScaleWidth(128));
make.leading.mas_equalTo(kGetScaleWidth(24));
make.height.mas_equalTo(kGetScaleWidth(40));
}];
[self.bgView mas_makeConstraints:^(MASConstraintMaker *make) {
2024-04-11 17:05:27 +08:00
make.leading.trailing.bottom.equalTo(self.view);
2023-08-14 14:39:41 +08:00
make.top.mas_equalTo(kGetScaleWidth(192));
}];
2023-07-14 18:50:55 +08:00
[self.remindLabel mas_makeConstraints:^(MASConstraintMaker *make) {
2024-04-11 17:05:27 +08:00
make.leading.trailing.equalTo(self.bgView).inset(kGetScaleWidth(10));
2023-08-14 14:39:41 +08:00
make.top.mas_equalTo(kGetScaleWidth(48));
2024-04-10 17:39:37 +08:00
2023-07-14 18:50:55 +08:00
}];
2023-08-14 14:39:41 +08:00
[self.sexStackView mas_makeConstraints:^(MASConstraintMaker *make) {
2024-04-11 17:05:27 +08:00
make.leading.mas_equalTo(kGetScaleWidth(38));
make.trailing.mas_equalTo(-kGetScaleWidth(38));
2023-08-14 14:39:41 +08:00
make.top.mas_equalTo(kGetScaleWidth(86));
}];
2023-07-14 18:50:55 +08:00
[self.backView mas_makeConstraints:^(MASConstraintMaker *make) {
2023-08-14 14:39:41 +08:00
make.width.mas_equalTo(kGetScaleWidth(303));
make.height.mas_equalTo(kGetScaleWidth(52));
make.centerX.equalTo(self.bgView);
make.top.mas_equalTo(self.sexStackView.mas_bottom).offset(kGetScaleWidth(28));
2023-07-14 18:50:55 +08:00
}];
2023-08-14 14:39:41 +08:00
[self.nameLabel mas_makeConstraints:^(MASConstraintMaker *make) {
2024-04-11 17:05:27 +08:00
make.trailing.mas_equalTo(-kGetScaleWidth(18));
2023-08-14 14:39:41 +08:00
make.centerY.equalTo(self.backView);
}];
[self.refreshButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.height.mas_equalTo(kGetScaleWidth(18));
make.centerY.equalTo(self.backView);
2024-04-11 17:05:27 +08:00
make.trailing.equalTo(self.nameLabel.mas_leading).mas_offset(-kGetScaleWidth(4));
2023-08-14 14:39:41 +08:00
}];
[self.textField mas_makeConstraints:^(MASConstraintMaker *make) {
2024-04-11 17:05:27 +08:00
make.leading.mas_equalTo(kGetScaleWidth(24));
2023-08-14 14:39:41 +08:00
make.top.bottom.equalTo(self.backView);
2024-04-11 17:05:27 +08:00
make.trailing.equalTo(self.refreshButton.mas_leading).mas_offset(-kGetScaleWidth(4));
2023-08-14 14:39:41 +08:00
}];
[self.maleView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(kGetScaleWidth(132));
make.height.mas_equalTo(kGetScaleWidth(108));
}];
[self.femaleView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(kGetScaleWidth(132));
make.height.mas_equalTo(kGetScaleWidth(108));
}];
2023-07-14 18:50:55 +08:00
[self.codeContainView mas_makeConstraints:^(MASConstraintMaker *make) {
2024-04-11 17:05:27 +08:00
make.leading.trailing.height.mas_equalTo(self.backView);
2023-08-14 14:39:41 +08:00
make.top.mas_equalTo(self.backView.mas_bottom).offset(kGetScaleWidth(20));
2023-07-14 18:50:55 +08:00
}];
[self.codeTextField mas_makeConstraints:^(MASConstraintMaker *make) {
2024-04-11 17:05:27 +08:00
make.leading.mas_equalTo(self.codeContainView).offset(kGetScaleWidth(24));
2023-07-14 18:50:55 +08:00
make.top.bottom.mas_equalTo(self.codeContainView);
2024-04-11 17:05:27 +08:00
make.trailing.mas_equalTo(self.codeContainView).offset(-kGetScaleWidth(18));
2023-07-14 18:50:55 +08:00
}];
2023-08-14 14:39:41 +08:00
2023-07-14 18:50:55 +08:00
[self.nextButton mas_makeConstraints:^(MASConstraintMaker *make) {
2023-08-14 14:39:41 +08:00
make.width.mas_equalTo(kGetScaleWidth(303));
make.centerX.equalTo(self.bgView);
make.height.mas_equalTo(kGetScaleWidth(48));
make.top.mas_equalTo(self.codeContainView.mas_bottom).offset(kGetScaleWidth(48));
2023-07-14 18:50:55 +08:00
}];
2023-08-14 14:39:41 +08:00
2023-07-14 18:50:55 +08:00
}
- (void)initEvents {
@weakify(self);
[[self.textField.rac_textSignal map:^id _Nullable(NSString * _Nullable value) {
if (value.length > 15) {
value = [value substringToIndex:15];
}
return value;
}] subscribeNext:^(id _Nullable x) {
@strongify(self);
self.textField.text = x;
[self updateNextButton];
}];
}
2024-03-19 14:48:45 +08:00
- (void)setInviteCode:(NSString *)inviteCode{
_inviteCode = inviteCode;
self.codeTextField.text = _inviteCode;
}
2023-07-14 18:50:55 +08:00
///
- (void)updateUserInfo {
2023-08-14 19:03:26 +08:00
[XNDJTDDLoadingTool showOnlyView:self.view];
2023-08-14 14:39:41 +08:00
[self.presenter complectionInfoWithAvatar:[self getAvatarUrl] gender:self.maleView.selected ? @"1":@"2" nick:self.textField.text inviteCode:self.codeTextField.text roomUid:nil shareUid:nil shareChannel:nil];
2023-07-14 18:50:55 +08:00
}
///
- (NSString *)getAvatarUrl {
NSString * avatar;
if ([self.presenter getThirdUserInfo] && [self.presenter getThirdUserInfo].avatarUrl.length > 0) {
avatar = [self.presenter getThirdUserInfo].avatarUrl;
} else {
avatar = @"https://image.hfighting.com/morentouxiang.png";
}
return avatar;
}
- (void)updateNextButton {
if (self.textField.text.length > 0 && self.sexString.length > 0) {
self.nextButton.enabled = YES;
} else {
self.nextButton.enabled = NO;
}
}
#pragma mark - LoginFullInfoProtocol
- (void)requestRandomNickSuccess:(NSString *)nick {
self.textField.text = nick;
}
- (void)complementInfoSuccess {
[StatisticsServiceHelper trackEventWithKey:StatisticsServiceEventLoginRepariSuccess];
/// ticket tabbaritem
[[AccountInfoStorage instance] saveTicket:nil];
2023-10-07 18:42:30 +08:00
2023-07-14 18:50:55 +08:00
NSString * inviteCode = self.codeTextField.text.length > 0 ? self.codeTextField.text : @"";
2023-10-07 18:42:30 +08:00
[PILoginManager jumpToHomeVCWithInviteCode:inviteCode];
2023-07-14 18:50:55 +08:00
}
2023-08-14 19:03:26 +08:00
-(void)complementInfoFail{
[XNDJTDDLoadingTool hideOnlyView:self.view];
};
2023-07-14 18:50:55 +08:00
#pragma mark - Event Response
- (void)nextButtonAction:(UIButton *)sender {
if (self.codeTextField.text.length <= 0) {
TTAlertConfig * config = [[TTAlertConfig alloc] init];
2023-08-16 15:50:27 +08:00
config.title = YMLocalizedString(@"LoginFullInfoViewController10");
2023-07-14 18:50:55 +08:00
config.message = YMLocalizedString(@"LoginFullInfoViewController0");
[TTPopup alertWithConfig:config confirmHandler:^{
[self updateUserInfo];
} cancelHandler:^{
}];
} else {
[self updateUserInfo];
}
}
2023-08-14 14:39:41 +08:00
- (void)refreshButtonAction {
2023-07-14 18:50:55 +08:00
CAKeyframeAnimation *lAni = [CAKeyframeAnimation animationWithKeyPath:@"transform.rotation.z"];
lAni.duration = 1;
lAni.values=@[@0,@(M_PI*2)];
//使
lAni.removedOnCompletion = NO;
lAni.fillMode = kCAFillModeForwards;
2023-08-14 14:39:41 +08:00
[self.refreshButton.layer addAnimation:lAni forKey:nil];
2023-07-14 18:50:55 +08:00
[self.presenter randomRequestNick];
}
2023-08-14 14:39:41 +08:00
- (void)maleButtonAction:(UITapGestureRecognizer *)tap {
PIUserSexView * view = (PIUserSexView *)tap.view;
self.femaleView.selected = NO;
view.selected = YES;
self.sexString = @"1";
2023-07-14 18:50:55 +08:00
}
2023-08-14 14:39:41 +08:00
- (void)femaleButtonAction:(UITapGestureRecognizer *)tap {
PIUserSexView * view = (PIUserSexView *)tap.view;
view.selected = YES;
self.maleView.selected = NO;
self.sexString = @"2";
2023-07-14 18:50:55 +08:00
}
#pragma mark - Getters And Setters
- (void)setSexString:(NSString *)sexString {
_sexString = sexString;
[self updateNextButton];
}
2023-08-14 14:39:41 +08:00
- (UIImageView *)bgImageView{
if(!_bgImageView){
_bgImageView = [[UIImageView alloc]init];
_bgImageView.image = kImage(@"login_phone_pwd_bg");
_bgImageView.contentMode = 2;
}
return _bgImageView;
}
2023-07-14 18:50:55 +08:00
- (UILabel *)titleLabel {
if (!_titleLabel) {
_titleLabel = [[UILabel alloc] init];
_titleLabel.text = YMLocalizedString(@"LoginFullInfoViewController1");
2023-08-14 14:39:41 +08:00
_titleLabel.font = kFontBold(28);
_titleLabel.textColor = UIColorFromRGB(0x1F1B4F);
2023-07-14 18:50:55 +08:00
}
return _titleLabel;
}
- (UILabel *)remindLabel {
if (!_remindLabel) {
_remindLabel = [[UILabel alloc] init];
2023-08-14 14:39:41 +08:00
NSMutableAttributedString *textAtt = [[NSMutableAttributedString alloc]initWithString:[NSString stringWithFormat:@"%@%@",YMLocalizedString(@"LoginFullInfoViewController8"),YMLocalizedString(@"LoginFullInfoViewController2")] attributes:@{NSFontAttributeName:kFontMedium(16),NSForegroundColorAttributeName:UIColorFromRGB(0x1F1B4F)}];
[textAtt addAttributes:@{NSFontAttributeName:kFontRegular(12),NSForegroundColorAttributeName:UIColorFromRGB(0x6D6B89)} range:[textAtt.string rangeOfString:[NSString stringWithFormat:@"%@",YMLocalizedString(@"LoginFullInfoViewController2")]]];
_remindLabel.attributedText = textAtt;
2024-04-10 17:39:37 +08:00
_remindLabel.numberOfLines = 2;
2023-08-14 14:39:41 +08:00
_remindLabel.textAlignment = NSTextAlignmentCenter;
2023-07-14 18:50:55 +08:00
}
return _remindLabel;
}
2023-08-14 14:39:41 +08:00
2023-07-14 18:50:55 +08:00
- (UIView *)backView {
if (!_backView) {
_backView = [[UIView alloc] init];
2023-08-14 14:39:41 +08:00
_backView.backgroundColor = UIColorFromRGB(0xF5F6FA);
2023-07-14 18:50:55 +08:00
_backView.layer.masksToBounds = YES;
2023-08-14 14:39:41 +08:00
_backView.layer.cornerRadius = kGetScaleWidth(52)/2;
2023-07-14 18:50:55 +08:00
}
return _backView;
}
- (UILabel *)nameLabel {
if (!_nameLabel) {
_nameLabel = [[UILabel alloc] init];
2023-08-14 14:39:41 +08:00
_nameLabel.text = YMLocalizedString(@"LoginFullInfoViewController9");
_nameLabel.font = kFontRegular(14);
_nameLabel.textColor = UIColorFromRGB(0x1F1B4F);
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(refreshButtonAction)];
_nameLabel.userInteractionEnabled = YES;
[_nameLabel addGestureRecognizer:tap];
2023-07-14 18:50:55 +08:00
[_nameLabel setContentCompressionResistancePriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisHorizontal];
[_nameLabel setContentHuggingPriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisHorizontal];
}
return _nameLabel;
}
2024-04-18 18:37:21 +08:00
- (MSBaseTextField *)textField {
2023-07-14 18:50:55 +08:00
if (!_textField) {
2024-04-18 18:37:21 +08:00
_textField = [[MSBaseTextField alloc] init];
2023-08-14 14:39:41 +08:00
_textField.textColor = UIColorFromRGB(0x1F1B4F);
_textField.font = kFontMedium(16);
_textField.placeholder = YMLocalizedString(@"LoginFullInfoViewController3");
2023-07-14 18:50:55 +08:00
_textField.borderStyle = UITextBorderStyleNone;
_textField.tintColor = [DJDKMIMOMColor appMainColor];
_textField.backgroundColor = [UIColor clearColor];
}
return _textField;
}
- (UIButton *)refreshButton {
if (!_refreshButton) {
_refreshButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_refreshButton setImage:[UIImage imageNamed:@"login_full_info_refresh"] forState:UIControlStateNormal];
[_refreshButton setImage:[UIImage imageNamed:@"login_full_info_refresh"] forState:UIControlStateSelected];
[_refreshButton setEnlargeEdgeWithTop:0 right:0 bottom:0 left:10];
[_refreshButton setContentHuggingPriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisHorizontal];
[_refreshButton setContentCompressionResistancePriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisHorizontal];
2023-08-14 14:39:41 +08:00
[_refreshButton addTarget:self action:@selector(refreshButtonAction) forControlEvents:UIControlEventTouchUpInside];
2023-07-14 18:50:55 +08:00
}
return _refreshButton;
}
- (UIStackView *)sexStackView {
if (!_sexStackView) {
_sexStackView = [[UIStackView alloc] init];
_sexStackView.axis = UILayoutConstraintAxisHorizontal;
_sexStackView.distribution = UIStackViewDistributionFill;
_sexStackView.alignment = UIStackViewAlignmentCenter;
2023-08-14 14:39:41 +08:00
_sexStackView.spacing = kGetScaleWidth(35);
2023-07-14 18:50:55 +08:00
}
return _sexStackView;
}
2023-08-14 14:39:41 +08:00
- (PIUserSexView *)maleView {
if (!_maleView) {
_maleView = [[PIUserSexView alloc] init];
_maleView.gender = GenderType_Male;
_maleView.selected = NO;
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(maleButtonAction:)];
[_maleView addGestureRecognizer:tap];
}
return _maleView;
2023-07-14 18:50:55 +08:00
}
2023-08-14 14:39:41 +08:00
- (PIUserSexView *)femaleView {
if (!_femaleView) {
_femaleView = [[PIUserSexView alloc] init];
_femaleView.gender = GenderType_Female;
_femaleView.selected = NO;
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(femaleButtonAction:)];
[_femaleView addGestureRecognizer:tap];
}
return _femaleView;
2023-07-14 18:50:55 +08:00
}
- (UIView *)codeContainView {
if (!_codeContainView) {
_codeContainView = [[UIView alloc] init];
2023-08-14 14:39:41 +08:00
_codeContainView.backgroundColor = UIColorFromRGB(0xF5F6FA);
2023-07-14 18:50:55 +08:00
_codeContainView.layer.masksToBounds= YES;
2023-08-14 14:39:41 +08:00
_codeContainView.layer.cornerRadius = kGetScaleWidth(52)/2;
2023-07-14 18:50:55 +08:00
}
return _codeContainView;
}
2024-04-18 18:37:21 +08:00
- (MSBaseTextField *)codeTextField {
2023-07-14 18:50:55 +08:00
if (!_codeTextField) {
2024-04-18 18:37:21 +08:00
_codeTextField = [[MSBaseTextField alloc] init];
2023-08-14 14:39:41 +08:00
_codeTextField.textColor = UIColorFromRGB(0x1F1B4F);
_codeTextField.font = kFontMedium(14);
2023-07-14 18:50:55 +08:00
_codeTextField.borderStyle = UITextBorderStyleNone;
2023-08-14 14:39:41 +08:00
NSMutableAttributedString *placeholder = [[NSMutableAttributedString alloc]initWithString:YMLocalizedString(@"LoginFullInfoViewController5") attributes:@{NSFontAttributeName:kFontRegular(14),NSForegroundColorAttributeName:UIColorFromRGB(0xB3B3C3)}];
_codeTextField.attributedPlaceholder = placeholder;
2023-07-14 18:50:55 +08:00
_codeTextField.textAlignment = NSTextAlignmentLeft;
_codeTextField.backgroundColor = [UIColor clearColor];
}
return _codeTextField;
}
- (UIButton *)nextButton{
if (!_nextButton) {
_nextButton = [UIButton buttonWithType:UIButtonTypeCustom];
_nextButton.layer.masksToBounds = YES;
2023-08-14 14:39:41 +08:00
_nextButton.layer.cornerRadius = kGetScaleWidth(48)/2.f;
2023-07-14 18:50:55 +08:00
[_nextButton setTitle:YMLocalizedString(@"LoginFullInfoViewController6") forState:UIControlStateNormal];
2023-08-14 14:39:41 +08:00
_nextButton.titleLabel.font = kFontMedium(16);
[_nextButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
2023-07-14 18:50:55 +08:00
_nextButton.enabled = NO;
UIImage *image = [UIImage gradientColorImageFromColors:@[[DJDKMIMOMColor confirmButtonGradientStartColor], [DJDKMIMOMColor confirmButtonGradientEndColor]] gradientType:GradientTypeLeftToRight imgSize:CGSizeMake(10, 10)];
[_nextButton setBackgroundImage:image forState:UIControlStateNormal];
[_nextButton addTarget:self action:@selector(nextButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _nextButton;
}
2023-08-14 14:39:41 +08:00
- (UIView *)bgView{
if(!_bgView){
UIView *bgView = [UIView new];
bgView.backgroundColor = [UIColor whiteColor];
bgView.layer.cornerRadius = kGetScaleWidth(20);
bgView.layer.masksToBounds = YES;
_bgView = bgView;
}
return _bgView;
}
2023-07-14 18:50:55 +08:00
@end