// // fileTransferPopView.m // 隐私保护 // // Created by xd h on 2023/12/27. // #import "fileTransferPopView.h" @interface fileTransferPopView () { UIButton *uploadButton; UIButton *downButton; } @end @implementation fileTransferPopView - (id)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; [self drawAnyView]; return self; } - (void)drawAnyView{ [self setBackgroundColor:[UIColor hwColor:@"#000000" alpha:0.6]]; UIView *whiteBgView = [[UIView alloc] init]; whiteBgView.backgroundColor = [UIColor whiteColor]; whiteBgView.layer.cornerRadius = 12; [self addSubview:whiteBgView]; [whiteBgView mas_makeConstraints:^(MASConstraintMaker *make) { make.left.mas_equalTo(0); make.right.mas_equalTo(0); make.height.mas_equalTo(237+ 10); make.bottom.mas_equalTo(10); }]; UIView *tapView = [[UIView alloc] init]; [self addSubview:tapView]; UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapUpFun:)]; [tapView addGestureRecognizer:tap]; [tapView mas_makeConstraints:^(MASConstraintMaker *make) { make.left.mas_equalTo(0); make.right.mas_equalTo(0); make.top.mas_equalTo(0); make.bottom.mas_equalTo(whiteBgView.mas_top); }]; UIView *blackView = [[UIView alloc] init]; blackView.backgroundColor = [UIColor blackColor]; blackView.layer.cornerRadius = 2; [whiteBgView addSubview:blackView]; [blackView mas_makeConstraints:^(MASConstraintMaker *make) { make.width.mas_equalTo(40); make.height.mas_equalTo(4); make.centerX.mas_equalTo(0); make.top.mas_equalTo(8); }]; CGFloat butW = SCREEN_W - 15*2; CGFloat butH = butW * 80.0/345.0; // uploadButton = [[UIButton alloc] init]; [uploadButton setBackgroundImage:[UIImage imageNamed:@"uploadFile_bg_upload"] forState:UIControlStateNormal]; uploadButton.tag = 1; [uploadButton addTarget:self action:@selector(didClickButtonFun:) forControlEvents:UIControlEventTouchUpInside]; [whiteBgView addSubview:uploadButton]; [uploadButton mas_makeConstraints:^(MASConstraintMaker *make) { make.width.mas_equalTo(butW); make.height.mas_equalTo(butH); make.centerX.mas_equalTo(0); make.top.mas_equalTo(blackView.mas_bottom).offset(10); }]; downButton = [[UIButton alloc] init]; downButton.tag = 2; [downButton setBackgroundImage:[UIImage imageNamed:@"uploadFile_bg_downLoad"] forState:UIControlStateNormal]; [downButton addTarget:self action:@selector(didClickButtonFun:) forControlEvents:UIControlEventTouchUpInside]; [whiteBgView addSubview:downButton]; [downButton mas_makeConstraints:^(MASConstraintMaker *make) { make.width.mas_equalTo(butW); make.height.mas_equalTo(butH); make.centerX.mas_equalTo(0); make.top.mas_equalTo(uploadButton.mas_bottom).offset(15); }]; } - (void)setFileTransferType:(NSInteger)fileTransferType { _fileTransferType = fileTransferType; NSString *uploadTitle = NSLocalizedString(@"File_upload_type_image",nil); NSString *uploadTip = NSLocalizedString(@"File_upload_type_tip",nil); NSString *downloadTitle = NSLocalizedString(@"File_down_type_image",nil); NSString *downloadTip = NSLocalizedString(@"File_down_type_tip",nil); if(fileTransferType == 2) { uploadTitle = NSLocalizedString(@"File_upload_type_video",nil); downloadTitle = NSLocalizedString(@"File_down_type_video",nil); } UILabel *uploadLabel = [[UILabel alloc] init]; uploadLabel.textColor = [UIColor whiteColor]; uploadLabel.font = [UIFont boldSystemFontOfSize:18.0]; uploadLabel.numberOfLines = 0; [uploadButton addSubview:uploadLabel]; NSString *totalStr = [[NSString alloc] initWithFormat:@"%@\n%@",uploadTitle,uploadTip]; NSMutableAttributedString *noteStr = [[NSMutableAttributedString alloc] initWithString:totalStr]; NSRange redRange = NSMakeRange([totalStr rangeOfString:uploadTip].location, [totalStr rangeOfString:uploadTip].length); [noteStr addAttribute:NSForegroundColorAttributeName value:[UIColor hwColor:@"#FFFFFF" alpha:0.8] range:redRange]; [noteStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:14.0] range:redRange]; // 设置行间距 NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init]; [paragraphStyle setLineSpacing:5]; //设置行间距 [noteStr addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [totalStr length])]; uploadLabel.attributedText = noteStr; [uploadLabel mas_makeConstraints:^(MASConstraintMaker *make) { make.left.mas_equalTo(15); make.right.mas_equalTo(-15); make.bottom.mas_equalTo(0); make.top.mas_equalTo(0); }]; UILabel *downloadLabel = [[UILabel alloc] init]; downloadLabel.textColor = [UIColor whiteColor]; downloadLabel.font = [UIFont boldSystemFontOfSize:18.0]; downloadLabel.numberOfLines = 0; [downButton addSubview:downloadLabel]; NSString *downTotalStr = [[NSString alloc] initWithFormat:@"%@\n%@",downloadTitle,downloadTip]; NSMutableAttributedString *downNoteStr = [[NSMutableAttributedString alloc] initWithString:downTotalStr]; NSRange downredRange = NSMakeRange([downTotalStr rangeOfString:downloadTip].location, [downTotalStr rangeOfString:downloadTip].length); [downNoteStr addAttribute:NSForegroundColorAttributeName value:[UIColor hwColor:@"#FFFFFF" alpha:0.8] range:downredRange]; [downNoteStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:14.0] range:downredRange]; // 设置行间距 // NSMutableParagraphStyle *paragraphStyle1 = [[NSMutableParagraphStyle alloc] init]; // [paragraphStyle1 setLineSpacing:5]; //设置行间距 [downNoteStr addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [downTotalStr length])]; downloadLabel.attributedText = downNoteStr; [downloadLabel mas_makeConstraints:^(MASConstraintMaker *make) { make.left.mas_equalTo(15); make.right.mas_equalTo(-15); make.bottom.mas_equalTo(0); make.top.mas_equalTo(0); }]; } - (void)tapUpFun:(UITapGestureRecognizer*)tap { [self removeFromSuperview]; } - (void)didClickButtonFun:(UIButton*)button { [self tapUpFun:nil]; NSInteger tag = button.tag; NSInteger didTag = -1; if(_fileTransferType == 1){ if(tag == 1){ didTag = 11; } else if(tag == 2){ didTag = 12; } } else if(_fileTransferType == 2){ if(tag == 1){ didTag = 21; } else if(tag == 2){ didTag = 22; } } if(didTag){ if(_didClickBut) { _didClickBut(didTag); } } } @end