// // YOUPAILCWriteMesVC.m // VQU // // Created by 肖浩然的mac on 2021/8/3. // Copyright © 2021 leo. All rights reserved. // #import "YOUPAILCWriteMesVC.h" #import "YOUPAILCWriteMesCell.h" #import "UIViewController+TFPresent.h" #import "YOUPAILCUpdateCityVC.h" #import "PGDatePickManager.h" #import "YOUPAILZWriteMesModel.h" #import "YOUPAILZWriteMesFemaleModel.h" #import "YOUPAISelectSexView.h" #import "IQKeyboardManager.h" #import "YYKit.h" @interface YOUPAILCWriteMesVC () /* tableView */ @property (strong, nonatomic) UITableView *youpaiptableView; /* inputNickField */ @property (strong, nonatomic) UITextField *youpaipinputNickField; /* iconImageView */ @property (strong, nonatomic) UIImageView *youpaipiconImageView; @property(nonatomic,strong)YOUPAILCUserModel* youpaipuserModel; /* finishBtn */ @property (strong, nonatomic) UIButton *youpaipfinishBtn; /* */ @property (strong, nonatomic) UIImage *youpaipiconImage; /* 图片url */ @property (copy, nonatomic) NSString *youpaipimageUrl; /* 男 */ @property (strong, nonatomic) YOUPAILZWriteMesModel *youpaipmaleModel; /* 女 */ @property (strong, nonatomic) YOUPAILZWriteMesFemaleModel *youpaipfemaleModel; /* key */ @property (copy, nonatomic) NSString *youpaipkeyStr; @property(strong, nonatomic)YOUPAISelectSexView *youpaipselectSex; @end @implementation YOUPAILCWriteMesVC -(void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; [UMengRecordTool umengEnterViewWithName:NSStringFromClass(self.class)]; } -(void)viewWillDisappear:(BOOL)animated{ [super viewWillDisappear:animated]; [UMengRecordTool umengOutViewWithName:NSStringFromClass(self.class)]; } - (void)viewDidLoad { [super viewDidLoad]; [UMengRecordTool umengEventCountWithId:EnterRegistration]; self.view.backgroundColor = LCWhiteColor; self.youpaipuserModel = [LCSaveModel getUserModel]; // 默认男生 if (self.youpaipgender>0){ self.youpaipuserModel.youpaipuserinfo.youpaipgender = self.youpaipgender; } // else{ // self.youpaipuserModel.youpaipuserinfo.youpaipgender = 2; // } if(self.youpaipinviteCodeStr == nil) { self.youpaipinviteCodeStr = @""; } [self youpaiptableView]; [self youpaiftableViewHeaderView]; [self youpaifgetNicknameAndIconData]; } -(YOUPAISelectSexView *)youpaipselectSex{ if(_youpaipselectSex == nil){ _youpaipselectSex = [YOUPAISelectSexView new]; @weakify(self); // 选择男用户 [_youpaipselectSex.youpaipmanBtn setBlockForControlEvents:UIControlEventTouchUpInside block:^(id _Nonnull sender) { @strongify(self); self.youpaipuserModel.youpaipuserinfo.youpaipgender = 2; self.youpaipgender = 2; // 2 == 男 [self youpaifrandomBtnClick]; // 随机昵称 // [self youpaifrandomSelectIcon]; }]; // 选择女用户 [_youpaipselectSex.youpaipwomanBtn setBlockForControlEvents:UIControlEventTouchUpInside block:^(id _Nonnull sender) { @strongify(self); self.youpaipuserModel.youpaipuserinfo.youpaipgender = 1; self.youpaipgender = 1; // 1 == 女 [self youpaifrandomBtnClick]; // 随机昵称 // [self youpaifrandomSelectIcon]; }]; } return _youpaipselectSex; } //完成资料 -(void)youpaiffinishBtnClick{ if (self.youpaipuserModel.youpaipuserinfo.youpaipgender == 0){ [ZCHUDHelper showTitle:@"请选择性别"]; return; } UIAlertController *systemAlert = [UIAlertController alertControllerWithTitle:nil message:@"性别确定后,将无法修改,如性别不符将导致部分功能不能正常使用" preferredStyle:UIAlertControllerStyleAlert]; UIAlertAction *action1 = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { NSMutableDictionary *dict = [NSMutableDictionary new]; [dict setObject:@(self.youpaipuserModel.youpaipuserinfo.youpaipgender) forKey:@"gender"]; [dict setObject:self.youpaipuserModel.youpaipuserinfo.youpaipbirthday forKey:@"birthday"]; [dict setObject:[LCTools getCityIDWithCityName:self.youpaipuserModel.youpaipuserinfo.youpaipcity] forKey:@"cityId"]; // [dict setObject:[LCTools getbindData]?[LCTools getbindData]:@"" forKey:@"bindData"]; [dict setObject:[LCTools getchannelCode]?[LCTools getchannelCode]:@"" forKey:@"channelCode"]; [dict setObject:[LCTools getbindData]?[LCTools getbindData]:@"" forKey:@"invite_code"]; [dict setObject:self.youpaipimageUrl forKey:@"avatar"]; [dict setObject:self.youpaipimageUrl forKey:@"albums"]; [dict setObject:self.youpaipinputNickField.text forKey:@"nickname"]; [dict setObject:self.youpaipkeyStr forKey:@"key"]; [dict setObject:@(25) forKey:@"age"]; [LCHttpHelper requestWithURLString:UpdateUserMsgNew parameters:dict needToken:YES type:(HttpRequestTypePost) success:^(id responseObject) { NSDictionary* dict = (NSDictionary*)responseObject; NSInteger code = [[dict objectForKey:@"code"] integerValue]; if (code==0) {//成功 [UMengRecordTool umengEventCountWithId:CompleteRegistration]; YOUPAILCUserModel* userModel = [YOUPAILCUserModel mj_objectWithKeyValues:[dict objectForKey:@"data"]]; [LCSaveModel saveUserModel:userModel]; [MobClick profileSignInWithPUID:userModel.youpaipuserinfo.youpaipuser_id]; // YOUPAILCUserModel* userModel = [LCSaveModel getUserModel]; if (self.isFinishMsg) { userModel.youpaipuserinfo.youpaipgender = self.youpaipuserModel.youpaipuserinfo.youpaipgender; userModel.youpaipuserinfo.youpaipbirthday = self.youpaipuserModel.youpaipuserinfo.youpaipbirthday; userModel.youpaipuserinfo.youpaipcity = self.youpaipuserModel.youpaipuserinfo.youpaipcity; [LCSaveModel saveUserModel:userModel]; [LCSaveData saveLoginMark:YES]; [[YOUPAILCIMLoginManager sharedCenter]IMLogin:[LCSaveModel getUserModel].youpaipuserinfo.youpaipuser_id token:[LCSaveModel getUserModel].youpaipuserinfo.youpaipim_token]; [LCTools changeRootToTabbar]; }else{ if(userModel.youpaipuserinfo.youpaipmobile!=nil&&userModel.youpaipuserinfo.youpaipmobile.length>9) { userModel.youpaipuserinfo.youpaipgender = self.youpaipuserModel.youpaipuserinfo.youpaipgender; userModel.youpaipuserinfo.youpaipbirthday = self.youpaipuserModel.youpaipuserinfo.youpaipbirthday; userModel.youpaipuserinfo.youpaipcity = self.youpaipuserModel.youpaipuserinfo.youpaipcity; [LCSaveModel saveUserModel:userModel]; // [LCSaveData saveLoginMark:YES]; [[YOUPAILCIMLoginManager sharedCenter]IMLogin:[LCSaveModel getUserModel].youpaipuserinfo.youpaipuser_id token:[LCSaveModel getUserModel].youpaipuserinfo.youpaipim_token]; // [LCTools changeRootToTabbar]; } else { //不做强制绑定 /* userModel.userinfo.gender = self.userModel.userinfo.gender; userModel.userinfo.birthday = self.userModel.userinfo.birthday; userModel.userinfo.city = self.userModel.userinfo.city; [LCSaveModel saveUserModel:userModel]; YOUPAILCBindPhoneAccountVC *bind = [[YOUPAILCBindPhoneAccountVC alloc]init]; bind.inLogin = YES; [self.navigationController pushViewController:bind animated:YES]; */ userModel.youpaipuserinfo.youpaipgender = self.youpaipuserModel.youpaipuserinfo.youpaipgender; userModel.youpaipuserinfo.youpaipbirthday = self.youpaipuserModel.youpaipuserinfo.youpaipbirthday; userModel.youpaipuserinfo.youpaipcity = self.youpaipuserModel.youpaipuserinfo.youpaipcity; [LCSaveModel saveUserModel:userModel]; // [LCSaveData saveLoginMark:YES]; [[YOUPAILCIMLoginManager sharedCenter]IMLogin:[LCSaveModel getUserModel].youpaipuserinfo.youpaipuser_id token:[LCSaveModel getUserModel].youpaipuserinfo.youpaipim_token]; // [LCTools changeRootToTabbar]; } } } } failure:^(NSError *error) { }]; }]; UIAlertAction *action2 = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleDefault handler:nil]; [systemAlert addAction:action2]; [systemAlert addAction:action1]; [self presentViewController:systemAlert animated:YES completion:nil]; } - (void)youpaifupdateStartBtnStatu{ if (![self.youpaipuserModel.youpaipuserinfo.youpaipnickname isEqualToString:@""] && self.youpaipuserModel.youpaipuserinfo.youpaipgender != 0 && ![self.youpaipuserModel.youpaipuserinfo.youpaipcity isEqualToString:@""]&& self.youpaipimageUrl.length >0 && ![self.youpaipuserModel.youpaipuserinfo.youpaipbirthday isEqualToString:@"0000-00-00"]&&self.youpaipimageUrl) { [self.youpaipfinishBtn setAlpha:1]; self.youpaipfinishBtn.userInteractionEnabled = YES; }else{ [self.youpaipfinishBtn setAlpha:0.45]; self.youpaipfinishBtn.userInteractionEnabled = NO; } [self.youpaipselectSex.youpaipmanBtn setSelected:self.youpaipuserModel.youpaipuserinfo.youpaipgender==2]; [self.youpaipselectSex.youpaipwomanBtn setSelected:self.youpaipuserModel.youpaipuserinfo.youpaipgender==1]; self.youpaipselectSex.youpaipmanBtn.backgroundColor = (self.youpaipuserModel.youpaipuserinfo.youpaipgender==2)? LZ1DBEF9Color:LZF5F4F7Color; self.youpaipselectSex.youpaipwomanBtn.backgroundColor = (self.youpaipuserModel.youpaipuserinfo.youpaipgender==1)? LZ1DBEF9Color:LZF5F4F7Color; [self.youpaiptableView reloadData]; } -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ if (indexPath.row==1){ PGDatePickManager *datePickManager = [[PGDatePickManager alloc]init]; datePickManager.isShadeBackground = true; datePickManager.cancelButtonFont = LCFont(15); datePickManager.confirmButtonFont = LCFont(15); datePickManager.cancelButtonTextColor = HexColorFromRGB(0x9F9DA5); datePickManager.confirmButtonTextColor = LZ273145Color; datePickManager.headerViewBackgroundColor = LCWhiteColor; datePickManager.headerHeight = 50; PGDatePicker *datePicker = datePickManager.datePicker; datePicker.backgroundColor = LCWhiteColor; datePicker.rowHeight = 35; datePicker.middleTextColor = LZ273145Color; datePicker.textColorOfSelectedRow = LZ273145Color; datePicker.textColorOfOtherRow = [LZ273145Color colorWithAlphaComponent:0.2f]; datePicker.textFontOfSelectedRow = LCFont(17); datePicker.textFontOfOtherRow = LCFont(17); datePicker.lineBackgroundColor = [UIColor clearColor]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; NSDate* currentDate = [NSDate date]; [dateFormatter setDateFormat:@"yyyy"]; NSString* currentYear=[dateFormatter stringFromDate:currentDate] ; [dateFormatter setDateFormat:@"MM"]; NSString* currentMonth=[dateFormatter stringFromDate:currentDate]; [dateFormatter setDateFormat:@"dd"]; NSString* currentDay=[dateFormatter stringFromDate:currentDate] ; NSString* maxDateStr = [NSString stringWithFormat:@"%zd-%@-%@",[currentYear integerValue]-18,currentMonth,currentDay]; NSString* minDateStr = [NSString stringWithFormat:@"%zd-%@-%@",[currentYear integerValue]-50,currentMonth,currentDay]; [dateFormatter setDateFormat:@"yyyy-MM-dd"]; NSString* defaultDateStr; if ([self.youpaipuserModel.youpaipuserinfo.youpaipbirthday isEqualToString:@""]) { defaultDateStr = @"1999-03-15"; }else{ defaultDateStr = self.youpaipuserModel.youpaipuserinfo.youpaipbirthday; } NSDate *date = [dateFormatter dateFromString:defaultDateStr];//上次设置的日期 [datePicker setDate:date]; datePicker.maximumDate = [dateFormatter dateFromString:maxDateStr]; datePicker.minimumDate = [dateFormatter dateFromString:minDateStr]; datePicker.delegate = self; datePicker.datePickerType = PGDatePickerTypeLine; datePicker.isHiddenMiddleText = false; datePicker.datePickerMode = PGDatePickerModeDate; [self presentViewController:datePickManager animated:false completion:nil]; }else if (indexPath.row==2){ YOUPAILCUpdateCityVC* cityVC = [[YOUPAILCUpdateCityVC alloc]init]; cityVC.youpaipcityName = @""; cityVC.youpaipblock = ^(NSString *cityName) { self.youpaipuserModel.youpaipuserinfo.youpaipcity = cityName; [self youpaifupdateStartBtnStatu]; }; [self.navigationController pushViewController:cityVC animated:YES]; } } - (void)datePicker:(PGDatePicker *)datePicker didSelectDate:(NSDateComponents *)dateComponents{ NSLog(@"dateComponents = %@", dateComponents); NSInteger year=[dateComponents year]; NSInteger month=[dateComponents month]; NSInteger day=[dateComponents day]; NSString* birthday = [NSString stringWithFormat:@"%ld-%ld-%ld",year,month,day]; self.youpaipuserModel.youpaipuserinfo.youpaipbirthday = birthday; [self youpaifupdateStartBtnStatu]; } -(void)textFieldDidEndEditing:(UITextField *)textField{ [IQKeyboardManager sharedManager].enable = NO; if (self.youpaipinputNickField == textField) { self.youpaipuserModel.youpaipuserinfo.youpaipnickname = textField.text; [self youpaifupdateStartBtnStatu]; } } -(void)textFieldDidBeginEditing:(UITextField *)textField{ [IQKeyboardManager sharedManager].enable = YES; } - (BOOL)textFieldShouldReturn:(UITextField *)textField { [self.youpaipinputNickField resignFirstResponder];//取消第一响应者 return YES; } -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ return 69; } -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ return 3; } -(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ YOUPAILCWriteMesCell *cell = [tableView dequeueReusableCellWithIdentifier:@"YOUPAILCWriteMesCell"]; cell = [[YOUPAILCWriteMesCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"YOUPAILCWriteMesCell"]; cell.backgroundColor = LCWhiteColor; [cell setSelectionStyle:UITableViewCellSelectionStyleNone]; switch (indexPath.row) { case 0: { cell.youpaiptitleLabel.text = @"昵称"; cell.youpaiparrowImageView.hidden = YES; cell.youpaiphintLabel.hidden = YES; UITextField *inputNickField = [UITextField new]; self.youpaipinputNickField =inputNickField; [cell addSubview:inputNickField]; [inputNickField mas_makeConstraints:^(MASConstraintMaker *make) { make.left.mas_equalTo(cell.youpaiptitleLabel.mas_right).offset(12); make.centerY.mas_equalTo(0); make.width.mas_equalTo(183); }]; inputNickField.tintColor = LZD3D1D7Color; inputNickField.returnKeyType = UIReturnKeyDone; inputNickField.textColor = LZ273145Color; inputNickField.delegate = self; inputNickField.userInteractionEnabled = NO; if (self.youpaipgender != 0) { inputNickField.text = self.youpaipuserModel.youpaipuserinfo.youpaipnickname; } NSMutableAttributedString* attrStr = [[NSMutableAttributedString alloc]initWithString:@"请输入昵称"]; [attrStr addAttribute:NSFontAttributeName value:LCFont(15) range:NSMakeRange(0, attrStr.length)]; [attrStr addAttribute:NSForegroundColorAttributeName value:HexColorFromRGB(0xCFCFCF) range:NSMakeRange(0, attrStr.length)]; inputNickField.attributedPlaceholder = attrStr; inputNickField.contentHorizontalAlignment=UIControlContentHorizontalAlignmentCenter; //色子 UIButton *randomBtn = [UIButton new]; [cell.contentView addSubview:randomBtn]; [randomBtn mas_makeConstraints:^(MASConstraintMaker *make) { make.right.mas_equalTo(-24); make.centerY.mas_equalTo(inputNickField); make.size.mas_equalTo(CGSizeMake(40, 40)); }]; [randomBtn setImage:[UIImage imageNamed:@"icon_ random_nickname"] forState:UIControlStateNormal]; [randomBtn addTarget:self action:@selector(youpaifrandomBtnClick) forControlEvents:UIControlEventTouchUpInside]; } break; case 1: { cell.youpaiptitleLabel.text = @"生日"; if ([self.youpaipuserModel.youpaipuserinfo.youpaipbirthday isEqualToString:@"0000-00-00"]) { cell.youpaiphintLabel.text = @"请选择生日"; cell.youpaiphintLabel.textColor = HexColorFromRGB(0x6C6B70); }else{ cell.youpaiphintLabel.text = self.youpaipuserModel.youpaipuserinfo.youpaipbirthday; cell.youpaiphintLabel.textColor = LZ273145Color; } } break; case 2: { cell.youpaiptitleLabel.text = @"城市"; if ([self.youpaipuserModel.youpaipuserinfo.youpaipcity isEqualToString:@""]) { [[LCLocationManager shareInstance]getLocationCity:^(NSString *city) { if (![city isEqualToString:@""]) { for (NSString* dictCity in [[LCSaveData getCityDict] allValues]) { if ([city containsString:dictCity]) { self.youpaipuserModel.youpaipuserinfo.youpaipcity = dictCity; cell.youpaiphintLabel.text = self.youpaipuserModel.youpaipuserinfo.youpaipcity; cell.youpaiphintLabel.textColor = LZ273145Color; [self youpaifupdateStartBtnStatu]; } } }else{ cell.youpaiphintLabel.text = @"请选择城市"; cell.youpaiphintLabel.textColor = HexColorFromRGB(0x6C6B70); } }]; }else{ cell.youpaiphintLabel.text = self.youpaipuserModel.youpaipuserinfo.youpaipcity; cell.youpaiphintLabel.textColor = LZ273145Color; } } break; default: break; } return cell; } #pragma mark-随机生成昵称和头像事件 //1女2男 -(void)youpaifrandomBtnClick{ if (self.youpaipgender == 0){ return; } if (self.youpaipgender == 1) { NSMutableArray *randomArray = [[NSMutableArray alloc] init]; int r = arc4random() % [self.youpaipfemaleModel.youpaipnickname count]; [randomArray addObject:[self.youpaipfemaleModel.youpaipnickname objectAtIndex:r]]; WNickname *nameModel = randomArray.firstObject; self.youpaipinputNickField.text = nameModel.youpaipname; self.youpaipkeyStr = nameModel.youpaipkey; YOUPAILCUserModel* userModel = [LCSaveModel getUserModel]; userModel.youpaipuserinfo.youpaipnickname = nameModel.youpaipname; }else{ NSMutableArray *randomArray = [[NSMutableArray alloc] init]; int r = arc4random() % [self.youpaipmaleModel.youpaipnickname count]; [randomArray addObject:[self.youpaipmaleModel.youpaipnickname objectAtIndex:r]]; Nickname *nameModel = randomArray.firstObject; self.youpaipinputNickField.text = nameModel.youpaipname; self.youpaipkeyStr = nameModel.youpaipkey; YOUPAILCUserModel* userModel = [LCSaveModel getUserModel]; userModel.youpaipuserinfo.youpaipnickname = nameModel.youpaipname; } self.youpaipuserModel.youpaipuserinfo.youpaipnickname = self.youpaipinputNickField.text; [self.youpaiptableView reloadData]; [self youpaifupdateStartBtnStatu]; } -(void)youpaifrandomSelectIcon{ TZImagePickerController *imagePickerVc = [[TZImagePickerController alloc] initWithMaxImagesCount:1 columnNumber:4 delegate:self]; [LCTZImageConfigHelper setDefaultTZImageConfig:imagePickerVc]; imagePickerVc.allowTakePicture = YES; // 在内部显示拍照按钮 imagePickerVc.allowPickingVideo = NO;//是否允许选择视频 imagePickerVc.allowPickingImage = YES;//是否允许选择照片 imagePickerVc.allowPickingOriginalPhoto = NO;//是否选择原图 imagePickerVc.showSelectedIndex = YES; //显示图片序号 imagePickerVc.allowCrop = NO;//是否允许裁剪 // // 裁剪框的尺寸 // imagePickerVc.cropRect = CGRectMake(0, KScreenHeight/2-(KScreenWidth/3.0*4)/2, KScreenWidth,KScreenWidth/3.0*4); // 4. 照片排列按修改时间升序 imagePickerVc.sortAscendingByModificationDate = YES;//按时间倒序排列图片 // You can get the photos by block, the same as by delegate. // 你可以通过block或者代理,来得到用户选择的照片. [imagePickerVc setDidFinishPickingPhotosHandle:^(NSArray *photos, NSArray *assets, BOOL isSelectOriginalPhoto) { [ZCHUDHelper showWithStatus:@"上传中..."]; // [LCCommonHttp uploadImages:photos type:@"album" succress:^(NSArray *imageArray) { // [ZCHUDHelper dismiss]; // for (NSDictionary* dict in imageArray) { // if ([[dict objectForKey:@"type"] isEqualToString:@"album"]) { // NSString* str = [dict objectForKey:@"url"]; // [self.userModel.userinfo.album_list addObject:str]; // [self.collectionView reloadData]; // [self setupHeaderView]; // } // } // }]; // NSMutableArray *images = [NSMutableArray array]; // for (UIImage *image in photos) { // NSData *data = UIImageJPEGRepresentation(image, 0.2f); // [images addObject:[UIImage imageWithData:data]]; // } // 1通过,0待审核,2,未通过 UIImage *image = [photos firstObject]; [LCCommonHttp uploadWithImages:photos Type:@"album" successBlock:^(NSArray *ossImagePaths) { [ZCHUDHelper dismiss]; NSString *uploadHead = ossImagePaths.firstObject; [self.youpaipiconImageView setImage:image]; self.youpaipimageUrl = uploadHead; }]; }]; [self presentViewController:imagePickerVc animated:YES completion:nil]; // if (self.youpaipgender == 0){ // return; // } // if (self.youpaipgender == 1) { // // NSMutableArray *randomArray = [[NSMutableArray alloc] init]; // // // int r = arc4random() % [self.youpaipfemaleModel.youpaipavatar count]; // [randomArray addObject:[self.youpaipfemaleModel.youpaipavatar objectAtIndex:r]]; // // [self.youpaipiconImageView sd_setImageWithURL:[LCTools getImageUrlWithAddress:randomArray.firstObject] placeholderImage:nil]; // self.youpaipimageUrl = randomArray.firstObject; // }else{ // NSMutableArray *randomArray = [[NSMutableArray alloc] init]; // // // int r = arc4random() % [self.youpaipmaleModel.youpaipavatar count]; // [randomArray addObject:[self.youpaipmaleModel.youpaipavatar objectAtIndex:r]]; // // [self.youpaipiconImageView sd_setImageWithURL:[LCTools getImageUrlWithAddress:randomArray.firstObject] placeholderImage:nil]; // self.youpaipimageUrl = randomArray.firstObject; // } // [self youpaifupdateStartBtnStatu]; } //懒加载tableView -(UITableView*)youpaiptableView{ if(!_youpaiptableView) { _youpaiptableView = [[UITableView alloc] initWithFrame:CGRectZero style:(UITableViewStylePlain)]; _youpaiptableView.delegate = self; _youpaiptableView.dataSource = self; if (@available(iOS 15.0, *)) { _youpaiptableView.sectionHeaderTopPadding = 0; } [self.view addSubview:_youpaiptableView ]; [_youpaiptableView mas_makeConstraints:^(MASConstraintMaker *make) { make.top.mas_equalTo(NavBarHeight); make.left.mas_offset(0); make.right.mas_offset(0); make.bottom.mas_offset(0); }]; // _tableView.scrollEnabled = NO; _youpaiptableView.backgroundColor = LCWhiteColor; [_youpaiptableView setSeparatorStyle:(UITableViewCellSeparatorStyleNone)]; UIView *footView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, KScreenWidth, 68+56+SafeHeight)]; _youpaiptableView.tableFooterView = footView; UIButton *finishBtn = [UIButton new]; self.youpaipfinishBtn =finishBtn; [footView addSubview:finishBtn]; [finishBtn mas_makeConstraints:^(MASConstraintMaker *make) { make.top.mas_equalTo(50); make.left.mas_equalTo(ScaleSize(27)); make.right.mas_equalTo(-ScaleSize(27)); make.height.mas_equalTo(56); }]; finishBtn.userInteractionEnabled = NO; finishBtn.layer.cornerRadius = 56/2; finishBtn.layer.masksToBounds = YES; // [finishBtn setBackgroundColor:HexColorFromRGB(0x2A2935)]; [finishBtn layoutIfNeeded]; [finishBtn setBackgroundImage:[LCTools ColorImage:CGSizeMake(KScreenWidth-54, 56) FromColors:@[LZBFB6FFColor,LZ7C69FEColor] ByGradientType:1] forState:UIControlStateNormal]; finishBtn.titleLabel.font = [UIFont systemFontOfSize:17]; finishBtn.adjustsImageWhenHighlighted = NO; [finishBtn setTitle:@"开始交友" forState:UIControlStateNormal]; [finishBtn setTitleColor:HexColorFromRGB(0xffffff) forState:UIControlStateNormal]; [finishBtn addTarget:self action:@selector(youpaiffinishBtnClick) forControlEvents:UIControlEventTouchUpInside]; } return _youpaiptableView; } -(void)youpaiftableViewHeaderView{ UIView *headerView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, KScreenWidth, 365)]; self.youpaiptableView.tableHeaderView = headerView; UILabel *titleLabel = [UILabel new]; [headerView addSubview:titleLabel]; [titleLabel mas_makeConstraints:^(MASConstraintMaker *make) { make.top.mas_equalTo(40); make.left.mas_equalTo(27); }]; titleLabel.font = LCBoldFont(27); titleLabel.textColor = LZ273145Color; titleLabel.text = @"让大家都认识你~"; //头像 UIImageView *iconImageView = [UIImageView new]; self.youpaipiconImageView= iconImageView; [headerView addSubview:iconImageView]; [iconImageView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerX.mas_equalTo(0); make.top.mas_equalTo(titleLabel.mas_bottom).offset(35); make.size.mas_equalTo(CGSizeMake(124, 124)); }]; iconImageView.userInteractionEnabled = YES; iconImageView.contentMode = UIViewContentModeScaleAspectFill; iconImageView.clipsToBounds = YES; iconImageView.layer.cornerRadius = 124/2; iconImageView.layer.masksToBounds = YES; iconImageView.image = [UIImage imageNamed:@"vqu_images_finish_msg_n"]; UITapGestureRecognizer *iconTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(youpaifopenAlbum)]; [iconImageView addGestureRecognizer:iconTap]; //图标 UIImageView *iconImageView1 = [UIImageView new]; [headerView addSubview:iconImageView1]; [iconImageView1 mas_makeConstraints:^(MASConstraintMaker *make) { make.right.mas_equalTo(iconImageView.mas_right).offset(-9); make.bottom.mas_equalTo(iconImageView.mas_bottom).offset(-9); make.size.mas_equalTo(CGSizeMake(24, 24)); }]; iconImageView1.image = [UIImage imageNamed:@"icon_ random_header"]; iconImageView1.userInteractionEnabled = YES; UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(youpaifrandomSelectIcon)]; [iconImageView addGestureRecognizer:tap]; UITapGestureRecognizer *tap1 = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(youpaifrandomSelectIcon)]; [iconImageView1 addGestureRecognizer:tap1]; [headerView addSubview:self.youpaipselectSex]; [_youpaipselectSex mas_makeConstraints:^(MASConstraintMaker *make) { make.left.right.mas_equalTo(0); make.bottom.mas_equalTo(0).offset(-20); make.height.mas_equalTo(75); }]; } - (void)youpaifopenAlbum{ TZImagePickerController *imagePickerVc = [[TZImagePickerController alloc] initWithMaxImagesCount:1 columnNumber:4 delegate:self]; [LCTZImageConfigHelper setDefaultTZImageConfig:imagePickerVc]; imagePickerVc.allowTakePicture = YES; // 在内部显示拍照按钮 imagePickerVc.allowPickingVideo = NO;//是否允许选择视频 imagePickerVc.allowPickingImage = YES;//是否允许选择照片 imagePickerVc.allowPickingOriginalPhoto = NO;//是否选择原图 imagePickerVc.showSelectedIndex = YES; //显示图片序号 imagePickerVc.allowCrop = NO;//是否允许裁剪 // // 裁剪框的尺寸 // imagePickerVc.cropRect = CGRectMake(0, KScreenHeight/2-(KScreenWidth/3.0*4)/2, KScreenWidth,KScreenWidth/3.0*4); // 4. 照片排列按修改时间升序 imagePickerVc.sortAscendingByModificationDate = YES;//按时间倒序排列图片 // You can get the photos by block, the same as by delegate. // 你可以通过block或者代理,来得到用户选择的照片. __weak __typeof(self)wself = self; [imagePickerVc setDidFinishPickingPhotosHandle:^(NSArray *photos, NSArray *assets, BOOL isSelectOriginalPhoto) { [ZCHUDHelper showWithStatus:@"上传中..."]; // 1通过,0待审核,2,未通过 [LCCommonHttp uploadWithImages:photos Type:@"album" successBlock:^(NSArray *ossImagePaths) { [ZCHUDHelper dismiss]; wself.youpaipimageUrl = ossImagePaths.firstObject; wself.youpaipiconImageView.image = photos[0]; wself.youpaipiconImage = photos[0]; [wself youpaifupdateStartBtnStatu]; }]; }]; [self presentViewController:imagePickerVc animated:YES completion:nil]; } - (void)imagePickerController:(TZImagePickerController *)picker didFinishPickingPhotos:(NSArray *)photos sourceAssets:(NSArray *)assets isSelectOriginalPhoto:(BOOL)isSelectOriginalPhoto { NSLog(@"%@",photos[0]); } #pragma mark-获取昵称和头像数据 -(void)youpaifgetNicknameAndIconData{ @weakify(self); [LCHttpHelper requestWithURLString:Getnickname parameters:@{} needToken:YES type:(HttpRequestTypePost) success:^(id responseObject) { @strongify(self); NSDictionary* dict = (NSDictionary*)responseObject; NSInteger code = [[dict objectForKey:@"code"] integerValue]; if (code==0) {//成功 NSDictionary *male = dict[@"data"][@"male"]; NSDictionary *female = dict[@"data"][@"female"]; self.youpaipmaleModel = [YOUPAILZWriteMesModel mj_objectWithKeyValues:male]; self.youpaipfemaleModel = [YOUPAILZWriteMesFemaleModel mj_objectWithKeyValues:female]; [self youpaifrandomBtnClick]; // [self youpaifrandomSelectIcon]; } } failure:^(NSError *error) { }]; } @end