From 0de4cf306d8e13fd57b3e04bfb81362a10f12a4d Mon Sep 17 00:00:00 2001 From: Davin <591807572@qq.com> Date: 星期一, 10 七月 2023 16:10:53 +0800 Subject: [PATCH] feature UI补全 --- EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 101 insertions(+), 16 deletions(-) diff --git a/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m b/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m index 9ae55a2..95f6ae0 100644 --- a/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m +++ b/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m @@ -34,8 +34,11 @@ @property (nonatomic, weak) IBOutlet UILabel *nVersionLabel; @property (nonatomic, weak) IBOutlet UIImageView *updateImageView; @property (nonatomic, strong) UIButton *deleteButton; +@property (nonatomic, strong) UIButton *privacyMaskButton; // 闅愮閬斀鎵ц杩囩▼鎻愰啋鎸夐挳 @property (nonatomic, strong) EZDeviceVersion *deviceVersion; @property (nonatomic, strong) NSTimer *timer; +@property (nonatomic, assign) BOOL isCatEye; // 鏄惁涓虹尗鐪� +@property (nonatomic, assign) BOOL privacyMasking; // 闅愮閬斀璁剧疆涓� @end @@ -50,6 +53,14 @@ [super viewDidLoad]; self.title = NSLocalizedString(@"setting_device_set_title", @"璁惧璁剧疆"); + // 鐚溂 CS-DH1, CS-DP1, CS-CV336, CS-CTQ1P + // 闂ㄩ攣 DL30V,Y3000FV,DL20VC,DL31FS,DL30F,DL30,Y3000FVS,Y3000F + self.isCatEye = NO; + self.privacyMasking = NO; + self.privacyMaskSwitch.on = NO; + if ([self.deviceInfo.deviceType containsString:@"CS-DH1"] || [self.deviceInfo.deviceType containsString:@"CS-DP1"] || [self.deviceInfo.deviceType containsString:@"CS-CV336"] || [self.deviceInfo.deviceType containsString:@"CS-CTQ1P"]) { + self.isCatEye = YES; + } // Uncomment the following line to preserve selection between presentations. // self.clearsSelectionOnViewWillAppear = NO; @@ -81,8 +92,10 @@ self.videoSwitch.on = self.deviceInfo.isEncrypt; } [_settingList addObject:@[NSLocalizedString(@"setting_hardware_decoding", @"纭В鐮�")]]; - [_settingList addObject:@[NSLocalizedString(@"setting_privacy_masking", @"闅愮閬斀")]]; - [_settingList addObject:@[NSLocalizedString(@"setting_sd_card_formatting", @"SD鍗℃牸寮忓寲")]]; + if (!self.isCatEye) { + [_settingList addObject:@[NSLocalizedString(@"setting_privacy_masking", @"闅愮閬斀")]]; + [_settingList addObject:@[NSLocalizedString(@"setting_sd_card_formatting", @"SD鍗℃牸寮忓寲")]]; + } [_settingList addObject:@[NSLocalizedString(@"delete", @"鍒犻櫎")]]; self.serialLabel.text = self.deviceInfo.deviceSerial; @@ -104,6 +117,12 @@ [self.privacyMaskSwitch setOn:NO]; [self getPrivacyMaskSwitchStatus]; self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone; + + [self.privacyMaskSwitch addSubview:self.privacyMaskButton]; + [self.privacyMaskButton addTarget:self action:@selector(privacyMaskingAction:) forControlEvents:UIControlEventTouchUpInside]; + [self.privacyMaskButton mas_makeConstraints:^(MASConstraintMaker *make) { + make.edges.mas_equalTo(UIEdgeInsetsZero); + }]; // [[EzvizDeviceManager sharedManager] startP2PHolePunching:_cameraInfo.cameraId completion:^(BOOL result, NSError *error) { // NSLog(@"result = %d, error = %@", result, error); // }]; @@ -170,7 +189,15 @@ __weak __typeof(self)weakSelf = self; [EZHttpUtil.sharedManager getCoverSwitchStatus:self.deviceInfo.deviceSerial completion:^(ResponseData * _Nonnull responseData) { if(responseData.success) { - NSLog(@"#############鎵撳嵃鏁版嵁锛�%@", responseData); + NSDictionary *dataDic = responseData.data; + if (dataDic && [[dataDic allKeys] containsObject:@"enable"]) { // 鍖呭惈闅愮閬斀鍔熻兘灞炴�� + weakSelf.privacyMaskSwitch.enabled = YES; + [weakSelf.privacyMaskSwitch setOn:[[dataDic objectForKey:@"enable"] boolValue]]; + } else { // 涓嶅寘鍚鍔熻兘 + weakSelf.privacyMaskSwitch.enabled = NO; + } + } else { + weakSelf.privacyMaskSwitch.enabled = NO; } }]; } @@ -195,6 +222,7 @@ cell.textLabel.textColor = HDLEZHEXCOLOR(0x1B2D4D, 1.0); cell.textLabel.textAlignment = NSTextAlignmentLeft; cell.accessoryType = UITableViewCellAccessoryNone; + cell.accessoryView = nil; if (indexPath.section == 0) { [cell.contentView addSubview:self.nameLabel]; @@ -235,14 +263,27 @@ } else if (indexPath.section == 6) { - [cell.contentView addSubview:self.privacyMaskSwitch]; - [self.privacyMaskSwitch mas_remakeConstraints:^(MASConstraintMaker *make) { - make.trailing.mas_equalTo(@(-17)); - make.centerY.mas_equalTo(cell.contentView.mas_centerY); - make.width.mas_equalTo(@51); - make.height.mas_equalTo(@31); - }]; - self.privacyMaskSwitch.on = !self.privacyMaskSwitch.on; + if (self.isCatEye) { // 鐚溂 + cell.backgroundColor = [UIColor clearColor]; + cell.contentView.backgroundColor = [UIColor clearColor]; + cell.textLabel.text = @""; + [cell.contentView addSubview:self.deleteButton]; + [self.deleteButton addTarget:self action:@selector(deleteAction) forControlEvents:UIControlEventTouchUpInside]; + [self.deleteButton mas_remakeConstraints:^(MASConstraintMaker *make) { + make.centerX.mas_equalTo(cell.contentView.mas_centerX); + make.left.mas_equalTo(cell.contentView.mas_left).offset(77.); + make.bottom.mas_equalTo(cell.contentView.mas_bottom); + make.height.mas_equalTo(@44); + }]; + } else { // 鎽勫儚澶� + [cell.contentView addSubview:self.privacyMaskSwitch]; + [self.privacyMaskSwitch mas_remakeConstraints:^(MASConstraintMaker *make) { + make.trailing.mas_equalTo(@(-17)); + make.centerY.mas_equalTo(cell.contentView.mas_centerY); + make.width.mas_equalTo(@51); + make.height.mas_equalTo(@31); + }]; + } } else if (indexPath.section == 7) { @@ -321,7 +362,7 @@ } - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { - return (indexPath.section == 8) ? 92 : 50.; + return ((!self.isCatEye && indexPath.section == 8) || (self.isCatEye && indexPath.section == 6)) ? 92 : 50.; } - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { @@ -329,7 +370,7 @@ } - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { - return (section == 0 || section == 2 || section == 6) ? 8.0f : 0.001f; + return (section == 0 || section == 2 || (!self.isCatEye && section == 6)) ? 8.0f : 0.001f; } - (nullable UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { @@ -382,13 +423,17 @@ UIAlertController *alert=[UIAlertController alertControllerWithTitle:HDLEZLocallizedString(@"alert_title") message:HDLEZLocallizedString(@"setting_formatting_alert_message") preferredStyle:UIAlertControllerStyleAlert]; UIAlertAction *cancle=[UIAlertAction actionWithTitle:HDLEZLocallizedString(@"device_temp_cancle") style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) { }]; - __weak __typeof(self)weakSelf = self; UIAlertAction *sure=[UIAlertAction actionWithTitle:HDLEZLocallizedString(@"device_temp_sure") style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { [EZOPENSDK formatStorage:self.deviceInfo.deviceSerial storageIndex:0 completion:^(NSError *error) { - NSLog(@"format command error = %@", error); - [UIView dd_showMessage:error.description]; + if (error) { + NSLog(@"format command error = %@", error); + [UIView dd_showMessage:NSLocalizedString(@"setting_sd_card_fail", @"鏍煎紡鍖栧け璐ワ紝璇烽噸鏂板啀璇�")]; + } else { + NSLog(@"format command error = %@", error); + [UIView dd_showMessage:NSLocalizedString(@"setting_sd_card_success", @"鏍煎紡鍖栨垚鍔�")]; + } }]; }]; [alert addAction:cancle]; @@ -588,6 +633,37 @@ - (IBAction)privacyMasking:(id)sender { UISwitch *pmSwitch = (UISwitch*)sender; BOOL status = pmSwitch.isOn; + +// if (self.privacyMasking) { +// self.privacyMaskSwitch.on = !status; +// [UIView dd_showMessage:@"姝e湪鎵ц涓紝璇风◢鍚庡啀璇�"]; +// return; +// } +// +// NSLog(@"#############璁剧疆鐘舵�侊細%@", status ? @"寮�鍚�" : @"鍏抽棴"); + __weak __typeof(self)weakSelf = self; + self.privacyMaskSwitch.enabled = NO; + self.privacyMaskButton.hidden = NO; + [self performSelector:@selector(delayPrivacyMasking) withObject:nil afterDelay:10.0]; + [EZHttpUtil.sharedManager coverSwitchStatus:self.deviceInfo.deviceSerial enable:(status ? 1 : 0) completion:^(ResponseData * _Nonnull responseData) { + if(responseData.success) { + NSLog(@"#############璁剧疆鎴愬姛锛�%@", responseData.data); + } else { + NSLog(@"#############璁剧疆澶辫触锛�%@", responseData.message); + [UIView dd_showMessage:NSLocalizedString(@"setting_privacy_masking_fail", @"璁剧疆澶辫触锛岃绋嶅悗鍐嶈瘯")]; + [weakSelf.privacyMaskSwitch setOn:!status]; + } + weakSelf.privacyMaskSwitch.enabled = YES; + }]; +} + +- (void)privacyMaskingAction:(id)sender { + [UIView dd_showMessage:NSLocalizedString(@"setting_privacy_masking_ing", @"姝e湪鎵ц涓紝璇风◢鍚庡啀璇�")]; +} + +- (void)delayPrivacyMasking { + self.privacyMaskButton.hidden = YES; +// self.privacyMaskSwitch.enabled = YES; } - (IBAction)encryptChanged:(id)sender @@ -653,4 +729,13 @@ return _deleteButton; } +- (UIButton *)privacyMaskButton { + if (!_privacyMaskButton) { + _privacyMaskButton = [UIButton buttonWithType:UIButtonTypeCustom]; + _privacyMaskButton.backgroundColor = [UIColor clearColor]; + _privacyMaskButton.hidden = YES; + } + return _privacyMaskButton; +} + @end -- Gitblit v1.8.0