// // ConAquarNowWiFiPwdVC.m // Ifish // // Created by wbzhan on 2019/9/20. // Copyright © 2019 lianlian. All rights reserved. // #import "ConAquarNowWiFiPwdVC.h" #import #import "ConAquarChooseWiFiVC.h" #import "IQKeyboardManager.h" @interface ConAquarNowWiFiPwdVC () Strong UILabel *titleL; Strong UILabel *subTitleL; Strong UITextField *wifiNameTextField; Strong UITextField *wifiPwdTextField; Strong UIButton *nextBtn; @end @implementation ConAquarNowWiFiPwdVC - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [self.wifiPwdTextField becomeFirstResponder]; [IQKeyboardManager sharedManager].enable = NO; } - (void)viewWillDisappear:(BOOL)animated{ [IQKeyboardManager sharedManager].enable = YES; } - (void)viewDidLoad { [super viewDidLoad]; [self addTitleViewWithTitle:@"连接网络"]; [self.view addSubview:self.titleL]; [self.view addSubview:self.subTitleL]; [self.view addSubview:self.wifiNameTextField]; [self.view addSubview:self.wifiPwdTextField]; [self.view addSubview:self.nextBtn]; [self loadLayout]; [self getSSid];//获取Wifi信息 // Do any additional setup after loading the view. } - (UILabel *)titleL { if (!_titleL) { _titleL = InitObject(UILabel); _titleL.text = @"设备需要连接的WiFi"; _titleL.textAlignment = NSTextAlignmentCenter; _titleL.font = FontSize(16); _titleL.textColor = RGB_92; } return _titleL; } - (UILabel *)subTitleL { if (!_subTitleL) { _subTitleL = InitObject(UILabel); _subTitleL.text = @"设备暂不支持5G路由WiFi"; _subTitleL.textAlignment = NSTextAlignmentCenter; _subTitleL.font = FontSize(12); _subTitleL.textColor = RGB_92; } return _subTitleL; } - (UIButton *)nextBtn{ if (!_nextBtn) { _nextBtn = InitObject(UIButton); [_nextBtn setTitle:@"下一步" forState:UIControlStateNormal]; [_nextBtn setBackgroundColor:RGB(88, 151, 231)]; [_nextBtn setTitleColor:XWhite forState:UIControlStateNormal]; [_nextBtn.titleLabel setFont:FontSize(14)]; _nextBtn.layer.cornerRadius = kSizeFrom750(10); _nextBtn.layer.masksToBounds = YES; [_nextBtn addTarget:self action:@selector(nextBtnClick:) forControlEvents:UIControlEventTouchUpInside]; } return _nextBtn; } -(UITextField*)wifiNameTextField{ if (!_wifiNameTextField) { _wifiNameTextField = InitObject(UITextField); _wifiNameTextField.placeholder = @"请输入WiFi名称"; _wifiNameTextField.font = FontSize(14); _wifiNameTextField.delegate = self; _wifiNameTextField.backgroundColor = XWhite; _wifiNameTextField.layer.masksToBounds = YES; _wifiNameTextField.layer.cornerRadius = kSizeFrom750(10); _wifiNameTextField.leftViewMode = UITextFieldViewModeAlways; UIView *leftView = InitObject(UIView); leftView.frame = RECT(0, 0, kSizeFrom750(90), kSizeFrom750(90)); UIImageView *leftImage = [[UIImageView alloc] initWithFrame:RECT(kSizeFrom750(20), kSizeFrom750(20), kSizeFrom750(50), kSizeFrom750(50))]; [leftView addSubview:leftImage]; [leftImage setImage:IMAGEBYENAME(@"icons_con_wifi")]; _wifiNameTextField.leftView = leftView; } return _wifiNameTextField; } -(UITextField*)wifiPwdTextField{ if (!_wifiPwdTextField) { _wifiPwdTextField = InitObject(UITextField); _wifiPwdTextField.placeholder = @"请输入WiFi密码"; _wifiPwdTextField.font = FontSize(14); _wifiPwdTextField.keyboardType = UIKeyboardTypeAlphabet; _wifiPwdTextField.delegate = self; _wifiPwdTextField.backgroundColor = XWhite; _wifiPwdTextField.layer.masksToBounds = YES; _wifiPwdTextField.layer.cornerRadius = kSizeFrom750(10); _wifiPwdTextField.leftViewMode = UITextFieldViewModeAlways; UIView *leftView = InitObject(UIView); leftView.frame = RECT(0, 0, kSizeFrom750(90), kSizeFrom750(90)); UIImageView *leftImage = [[UIImageView alloc] initWithFrame:RECT(kSizeFrom750(15), kSizeFrom750(15), kSizeFrom750(60), kSizeFrom750(60))]; [leftView addSubview:leftImage]; [leftImage setImage:IMAGEBYENAME(@"icons_con_lock")]; _wifiPwdTextField.leftView = leftView; } return _wifiPwdTextField; } -(void)loadLayout{ [self.titleL mas_makeConstraints:^(MASConstraintMaker *make) { make.top.mas_equalTo(kSizeFrom750(88)); make.centerX.mas_equalTo(self.view); }]; [self.subTitleL mas_makeConstraints:^(MASConstraintMaker *make) { make.centerX.mas_equalTo(self.titleL); make.top.mas_equalTo(self.titleL.mas_bottom).offset(kSizeFrom750(10)); }]; [self.wifiNameTextField mas_makeConstraints:^(MASConstraintMaker *make) { make.top.mas_equalTo(self.subTitleL.mas_bottom).offset(kSizeFrom750(80)); make.centerX.mas_equalTo(self.subTitleL); make.width.mas_equalTo(kSizeFrom750(690)); make.height.mas_equalTo(kSizeFrom750(90)); }]; [self.wifiPwdTextField mas_makeConstraints:^(MASConstraintMaker *make) { make.centerX.width.height.mas_equalTo(self.wifiNameTextField); make.top.mas_equalTo(self.wifiNameTextField.mas_bottom).offset(kSizeFrom750(50)); }]; [self.nextBtn mas_makeConstraints:^(MASConstraintMaker *make) { make.centerX.mas_equalTo(self.view); make.top.mas_equalTo(self.wifiPwdTextField.mas_bottom).offset(kSizeFrom750(100)); make.width.mas_equalTo(200); make.height.mas_equalTo(30); }]; [self addContentLabel];; } -(void)addContentLabel{ UILabel *preLabel; NSArray *textArr = @[@"1.选择信号较强的2.4G WiFi,将设备和手机尽量靠近路由器,正确填写WiFi密码即可快速让设备联网;",@"2.设备暂不支持5G WiFi,若已连接,请切换2.4G WiFi;",@"3.路由器不能开启如AP隔离、防蹭网、WLAN助手等限制WiFi接入的选项;",@"4.设备暂不支持WAP/WPA2 企业级WiFi,若已连接,请切换其他WiFi。"]; for (int i=3; i>=0; i--) { UILabel *label = InitObject(UILabel); label.text = textArr[i]; label.textColor = RGB_92; label.font = FontSize(12); label.numberOfLines = 0; [self.view addSubview:label]; [label mas_makeConstraints:^(MASConstraintMaker *make) { make.left.mas_equalTo(kSizeFrom750(60)); make.right.mas_equalTo(-kSizeFrom750(60)); if (preLabel==nil) { make.bottom.mas_equalTo(self.view).offset(-kSizeFrom750(30)); } else { make.bottom.mas_equalTo(preLabel.mas_top).offset(-kSizeFrom750(30)); } }]; preLabel = label; } } -(void)getSSid{ Reachability *currReach = [Reachability reachabilityForLocalWiFi]; NetworkStatus status = [currReach currentReachabilityStatus]; NSLog(@"%ld", (long)status); if (status==AFNetworkReachabilityStatusReachableViaWiFi) { [self connectMyWIFI]; }else{ [self showTitle:@"" messsage:@"请切换到WiFi环境下绑定"]; } } -(void)connectMyWIFI{ [CommonUtils getNetworkTypeComplete:^(NSString *netconnType, NSString *BSSID, NSString *SSID) { NSUserDefaults*userDefsult=[NSUserDefaults standardUserDefaults]; NSString*pass=[userDefsult objectForKey:@"wifiPass"]; _ssid = SSID; _bssid = BSSID; self.wifiPwdTextField.text=pass; self.wifiNameTextField.text = SSID; }]; } // refer to http://stackoverflow.com/questions/5198716/iphone-get-ssid-without-private-library #pragma mark --buttonClick -(void)nextBtnClick:(UIButton *)sender{ BOOL isRight =[dataContorl isIncludeSpecialCharact:self.wifiPwdTextField.text]; if (!isRight) { [self.view makeToast:@"您输入的密码带特殊符号,请更改路由器密码。"]; return; } [self.wifiPwdTextField resignFirstResponder]; [self.wifiNameTextField resignFirstResponder]; ConAquarChooseWiFiVC *chooseVC = InitObject(ConAquarChooseWiFiVC); chooseVC.wifiName = [NSString stringWithFormat:@"%@",self.wifiNameTextField.text]; chooseVC.wifiPwd = [NSString stringWithFormat:@"%@",self.wifiPwdTextField.text]; chooseVC.ssid = [NSString stringWithFormat:@"%@",self.ssid]; chooseVC.bssid = [NSString stringWithFormat:@"%@",self.bssid]; chooseVC.deviceType=self.deviceType; [self.navigationController pushViewController:chooseVC animated:YES]; } /* #pragma mark - Navigation // In a storyboard-based application, you will often want to do a little preparation before navigation - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { // Get the new view controller using [segue destinationViewController]. // Pass the selected object to the new view controller. } */ @end