去除广告和基本UI逻辑

This commit is contained in:
祝发冬 2023-08-20 00:19:35 +08:00
parent 278fadba7d
commit b2f5610e74
10 changed files with 3216 additions and 116 deletions

View File

@ -2304,6 +2304,8 @@
C0553C2628856DBD00AB7B50 /* topround.png in Resources */ = {isa = PBXBuildFile; fileRef = C0553C2428856DBC00AB7B50 /* topround.png */; };
C0553C2728856DBD00AB7B50 /* bottomRound.png in Resources */ = {isa = PBXBuildFile; fileRef = C0553C2528856DBD00AB7B50 /* bottomRound.png */; };
C0553C292885962B00AB7B50 /* centerrect.png in Resources */ = {isa = PBXBuildFile; fileRef = C0553C282885962A00AB7B50 /* centerrect.png */; };
C0569BEA2A91162C00EE1734 /* SPAlertController.m in Sources */ = {isa = PBXBuildFile; fileRef = C0569BE82A91162C00EE1734 /* SPAlertController.m */; };
C0569BEB2A91162D00EE1734 /* SPAlertController.h in Headers */ = {isa = PBXBuildFile; fileRef = C0569BE92A91162C00EE1734 /* SPAlertController.h */; };
C057166C282376CC004F113A /* UIButton+ImageTitleStyle.h in Headers */ = {isa = PBXBuildFile; fileRef = C057166A282376CC004F113A /* UIButton+ImageTitleStyle.h */; };
C057166D282376CC004F113A /* UIButton+ImageTitleStyle.m in Sources */ = {isa = PBXBuildFile; fileRef = C057166B282376CC004F113A /* UIButton+ImageTitleStyle.m */; };
C05716702823D653004F113A /* XuanduoTimerListViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = C057166E2823D652004F113A /* XuanduoTimerListViewController.h */; };
@ -2339,9 +2341,9 @@
C0B2F55D244D5577001079AA /* StoreNameView.h in Headers */ = {isa = PBXBuildFile; fileRef = C0B2F55B244D5577001079AA /* StoreNameView.h */; };
C0B2F55E244D5577001079AA /* StoreNameView.m in Sources */ = {isa = PBXBuildFile; fileRef = C0B2F55C244D5577001079AA /* StoreNameView.m */; };
C0B2F560244D568E001079AA /* StoreNameView.xib in Resources */ = {isa = PBXBuildFile; fileRef = C0B2F55F244D568E001079AA /* StoreNameView.xib */; };
C0B37E0C2A8BA81B00CC9EB7 /* ConfigWfiViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = C0B37E092A8BA81B00CC9EB7 /* ConfigWfiViewController.h */; };
C0B37E0D2A8BA81B00CC9EB7 /* ConfigWfiViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = C0B37E0A2A8BA81B00CC9EB7 /* ConfigWfiViewController.m */; };
C0B37E0E2A8BA81B00CC9EB7 /* ConfigWfiViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = C0B37E0B2A8BA81B00CC9EB7 /* ConfigWfiViewController.xib */; };
C0B37E0C2A8BA81B00CC9EB7 /* ConfigWifiViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = C0B37E092A8BA81B00CC9EB7 /* ConfigWifiViewController.h */; };
C0B37E0D2A8BA81B00CC9EB7 /* ConfigWifiViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = C0B37E0A2A8BA81B00CC9EB7 /* ConfigWifiViewController.m */; };
C0B37E0E2A8BA81B00CC9EB7 /* ConfigWifiViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = C0B37E0B2A8BA81B00CC9EB7 /* ConfigWifiViewController.xib */; };
C0B37E112A8BAB2300CC9EB7 /* EspTouchDelegateImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = C0B37E0F2A8BAB2300CC9EB7 /* EspTouchDelegateImpl.h */; };
C0B37E122A8BAB2300CC9EB7 /* EspTouchDelegateImpl.m in Sources */ = {isa = PBXBuildFile; fileRef = C0B37E102A8BAB2300CC9EB7 /* EspTouchDelegateImpl.m */; };
C0C4CCFF272CDF4A00574BE8 /* UIViewController+Navgation.m in Sources */ = {isa = PBXBuildFile; fileRef = C0C4CCFD272CDF4A00574BE8 /* UIViewController+Navgation.m */; };
@ -5834,6 +5836,8 @@
C0553C2428856DBC00AB7B50 /* topround.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = topround.png; sourceTree = "<group>"; };
C0553C2528856DBD00AB7B50 /* bottomRound.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = bottomRound.png; sourceTree = "<group>"; };
C0553C282885962A00AB7B50 /* centerrect.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = centerrect.png; sourceTree = "<group>"; };
C0569BE82A91162C00EE1734 /* SPAlertController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPAlertController.m; sourceTree = "<group>"; };
C0569BE92A91162C00EE1734 /* SPAlertController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPAlertController.h; sourceTree = "<group>"; };
C057166A282376CC004F113A /* UIButton+ImageTitleStyle.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "UIButton+ImageTitleStyle.h"; sourceTree = "<group>"; };
C057166B282376CC004F113A /* UIButton+ImageTitleStyle.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIButton+ImageTitleStyle.m"; sourceTree = "<group>"; };
C057166E2823D652004F113A /* XuanduoTimerListViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XuanduoTimerListViewController.h; sourceTree = "<group>"; };
@ -5869,9 +5873,9 @@
C0B2F55B244D5577001079AA /* StoreNameView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = StoreNameView.h; sourceTree = "<group>"; };
C0B2F55C244D5577001079AA /* StoreNameView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = StoreNameView.m; sourceTree = "<group>"; };
C0B2F55F244D568E001079AA /* StoreNameView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StoreNameView.xib; sourceTree = "<group>"; };
C0B37E092A8BA81B00CC9EB7 /* ConfigWfiViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ConfigWfiViewController.h; sourceTree = "<group>"; };
C0B37E0A2A8BA81B00CC9EB7 /* ConfigWfiViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ConfigWfiViewController.m; sourceTree = "<group>"; };
C0B37E0B2A8BA81B00CC9EB7 /* ConfigWfiViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ConfigWfiViewController.xib; sourceTree = "<group>"; };
C0B37E092A8BA81B00CC9EB7 /* ConfigWifiViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ConfigWifiViewController.h; sourceTree = "<group>"; };
C0B37E0A2A8BA81B00CC9EB7 /* ConfigWifiViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ConfigWifiViewController.m; sourceTree = "<group>"; };
C0B37E0B2A8BA81B00CC9EB7 /* ConfigWifiViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ConfigWifiViewController.xib; sourceTree = "<group>"; };
C0B37E0F2A8BAB2300CC9EB7 /* EspTouchDelegateImpl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = EspTouchDelegateImpl.h; sourceTree = "<group>"; };
C0B37E102A8BAB2300CC9EB7 /* EspTouchDelegateImpl.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = EspTouchDelegateImpl.m; sourceTree = "<group>"; };
C0C4CCFD272CDF4A00574BE8 /* UIViewController+Navgation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIViewController+Navgation.m"; sourceTree = "<group>"; };
@ -10120,9 +10124,9 @@
883E78181D48A5E50030E075 /* SaySomethingViewController.m */,
883E78191D48A5E50030E075 /* SaySomethingViewController.xib */,
883E781A1D48A5E50030E075 /* SecondConnectWifiController.h */,
C0B37E092A8BA81B00CC9EB7 /* ConfigWfiViewController.h */,
C0B37E0A2A8BA81B00CC9EB7 /* ConfigWfiViewController.m */,
C0B37E0B2A8BA81B00CC9EB7 /* ConfigWfiViewController.xib */,
C0B37E092A8BA81B00CC9EB7 /* ConfigWifiViewController.h */,
C0B37E0A2A8BA81B00CC9EB7 /* ConfigWifiViewController.m */,
C0B37E0B2A8BA81B00CC9EB7 /* ConfigWifiViewController.xib */,
883E781B1D48A5E50030E075 /* SecondConnectWifiController.m */,
883E781C1D48A5E50030E075 /* SecondConnectWifiController.xib */,
E5317A1421188F8A0014AFDD /* RestartDeviceModel.h */,
@ -12209,6 +12213,7 @@
88F5ECA41D48C9C400CC7CAF /* ThirdPartUnity */ = {
isa = PBXGroup;
children = (
C0569BE72A91162C00EE1734 /* SPAlertController */,
2AC874DC26874F7500B6161C /* ESPTouch */,
C0D3A11B2647EB9F008E6FD6 /* ZLRocker */,
18C54F032350541400DF4E7D /* AlibcTradeSDK-3.1.1.96 */,
@ -12467,6 +12472,15 @@
path = HTTPDNS;
sourceTree = "<group>";
};
C0569BE72A91162C00EE1734 /* SPAlertController */ = {
isa = PBXGroup;
children = (
C0569BE82A91162C00EE1734 /* SPAlertController.m */,
C0569BE92A91162C00EE1734 /* SPAlertController.h */,
);
path = SPAlertController;
sourceTree = "<group>";
};
C0714DFC2A6FC3B300182CA8 /* airkiss */ = {
isa = PBXGroup;
children = (
@ -13200,6 +13214,7 @@
CB484DE322B8C8C80075F050 /* pixdesc.h in Headers */,
CB48204D2334D0A200A50C92 /* ConAquarChooseWiFiVC.h in Headers */,
3D1C50B1221A9EDF0096AE43 /* YMsgBox.h in Headers */,
C0569BEB2A91162D00EE1734 /* SPAlertController.h in Headers */,
CBA6167D228F9AB100ED380D /* MASViewAttribute.h in Headers */,
3D1C50BD221A9EE00096AE43 /* LoginResult.h in Headers */,
CB7D6AA522953BEB0014E5C7 /* YYCache.h in Headers */,
@ -13258,7 +13273,7 @@
CBA615FC228E8E5A00ED380D /* MyMessageViewController.h in Headers */,
CB484E1522B8C8C90075F050 /* avfft.h in Headers */,
CB484E0022B8C8C80075F050 /* channel_layout.h in Headers */,
C0B37E0C2A8BA81B00CC9EB7 /* ConfigWfiViewController.h in Headers */,
C0B37E0C2A8BA81B00CC9EB7 /* ConfigWifiViewController.h in Headers */,
CBB0243123517947002900D5 /* MJFoundation.h in Headers */,
3D1C512B221A9EE10096AE43 /* IfishCameraRecordfirstCell.h in Headers */,
402591952238D91400CE4900 /* UINavigationController+Config.h in Headers */,
@ -14631,7 +14646,7 @@
C0B2F560244D568E001079AA /* StoreNameView.xib in Resources */,
882956211DBDA3A100E9DDD7 /* neves0036.png in Resources */,
8865120C1E979BF100BABDF1 /* personal_iocn_share@3x.png in Resources */,
C0B37E0E2A8BA81B00CC9EB7 /* ConfigWfiViewController.xib in Resources */,
C0B37E0E2A8BA81B00CC9EB7 /* ConfigWifiViewController.xib in Resources */,
8814781B1E712A2700BFB79C /* task_ifishDoctorpng.png in Resources */,
882957591DBDA3A300E9DDD7 /* swimmingfish0072.png in Resources */,
883E78821D48A5E50030E075 /* ChangeMobleController.xib in Resources */,
@ -15289,6 +15304,7 @@
3D1C511C221A9EE00096AE43 /* IfishCameraModel.m in Sources */,
881672341EA5DE2B00BEBF23 /* UMComLikeButtonTableViewCell.m in Sources */,
88F5EFD31D48D08100CC7CAF /* MMProgressHUD.m in Sources */,
C0569BEA2A91162C00EE1734 /* SPAlertController.m in Sources */,
88779EB21E28BE7D00209ABA /* IfishShopDetailViewController.m in Sources */,
883E78991D48A5E50030E075 /* IfishDeviceViewController.m in Sources */,
8853D99A1E24EED700776BF4 /* ShuoMingShuCell.m in Sources */,
@ -15698,7 +15714,7 @@
886970051E9DFA12005D4AFB /* IfishGoodsData.m in Sources */,
88140AA91D86B84300FE34E5 /* LxGetCurrentIp.m in Sources */,
88653C9E1E76697000FF973E /* IfishInformations.m in Sources */,
C0B37E0D2A8BA81B00CC9EB7 /* ConfigWfiViewController.m in Sources */,
C0B37E0D2A8BA81B00CC9EB7 /* ConfigWifiViewController.m in Sources */,
CB7D6AA622953BEB0014E5C7 /* YYKVStorage.m in Sources */,
886F4DF11D753858001EDA34 /* Report2ViewCell.m in Sources */,
881671EB1EA5DE2B00BEBF23 /* UMComCommentEditView.m in Sources */,

View File

@ -0,0 +1,223 @@
//
// SPAlertController.h
// SPAlertController
//
// Created by 乐升平 on 18/10/12. https://github.com/SPStore/SPAlertController
// Copyright © 2018-2019 leshengping (lesp163@163.com). All rights reserved.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
typedef NS_ENUM(NSInteger, SPAlertControllerStyle) {
SPAlertControllerStyleActionSheet = 0, // 从单侧弹出(顶/左/底/右)
SPAlertControllerStyleAlert, // 从中间弹出
};
typedef NS_ENUM(NSInteger, SPAlertAnimationType) {
SPAlertAnimationTypeDefault = 0, // 默认动画如果是SPAlertControllerStyleActionSheet样式,默认动画等效于SPAlertAnimationTypeFromBottom如果是SPAlertControllerStyleAlert样式,默认动画等效于SPAlertAnimationTypeShrink
SPAlertAnimationTypeFromBottom, // 从底部弹出
SPAlertAnimationTypeFromTop, // 从顶部弹出
SPAlertAnimationTypeFromRight, // 从右边弹出
SPAlertAnimationTypeFromLeft, // 从左边弹出
SPAlertAnimationTypeShrink, // 收缩动画
SPAlertAnimationTypeExpand, // 发散动画
SPAlertAnimationTypeFade, // 渐变动画
SPAlertAnimationTypeNone, // 无动画
SPAlertAnimationTypeAlpha NS_ENUM_DEPRECATED_IOS(8_0, 8_0, "Use SPAlertAnimationTypeFade instead"), // 渐变动画
SPAlertAnimationTypeRaiseUp NS_ENUM_DEPRECATED_IOS(8_0, 8_0, "Use SPAlertAnimationTypeFromBottom instead"), // 从底部弹出
SPAlertAnimationTypeDropDown NS_ENUM_DEPRECATED_IOS(8_0, 8_0, "Use SPAlertAnimationTypeFromTop instead"), // 从顶部弹出
};
typedef NS_ENUM(NSInteger, SPAlertActionStyle) {
SPAlertActionStyleDefault = 0, // 默认样式
SPAlertActionStyleCancel, // 取消样式,字体加粗
SPAlertActionStyleDestructive // 红色字体样式
};
// ===================================================== SPAlertAction =====================================================
@interface SPAlertAction : NSObject <NSCopying>
+ (instancetype)actionWithTitle:(nullable NSString *)title style:(SPAlertActionStyle)style handler:(void (^ __nullable)(SPAlertAction *action))handler;
/** action的标题 */
@property(nullable, nonatomic, copy) NSString *title;
/** action的富文本标题 */
@property(nullable, nonatomic, copy) NSAttributedString *attributedTitle;
/** action的图标位于title的左边 */
@property(nullable, nonatomic, copy) UIImage *image;
/** title跟image之间的间距 */
@property (nonatomic, assign) CGFloat imageTitleSpacing;
/** 渲染颜色,当外部的图片使用了UIImageRenderingModeAlwaysTemplate时,使用该属性可改变图片的颜色 */
@property (nonatomic, strong) UIColor *tintColor;
/** 是否能点击,默认为YES */
@property(nonatomic, getter=isEnabled) BOOL enabled;
/** action的标题颜色,这个颜色只是普通文本的颜色富文本颜色需要用NSForegroundColorAttributeName */
@property(nonatomic, strong) UIColor *titleColor;
/** action的标题字体,如果文字太长显示不全会自动改变字体自适应按钮宽度最多压缩文字为原来的0.5倍封顶 */
@property(nonatomic, strong) UIFont *titleFont;
/** action的标题的内边距如果在不改变字体的情况下想增大action的高度可以设置该属性的top和bottom值,默认UIEdgeInsetsMake(0, 15, 0, 15) */
@property(nonatomic, assign) UIEdgeInsets titleEdgeInsets;
/** 样式 */
@property(nonatomic, readonly) SPAlertActionStyle style;
@end
// ===================================================== SPAlertController =====================================================
@protocol SPAlertControllerDelegate;
@interface SPAlertController : UIViewController
+ (instancetype)alertControllerWithTitle:(nullable NSString *)title message:(nullable NSString *)message preferredStyle:(SPAlertControllerStyle)preferredStyle;
+ (instancetype)alertControllerWithTitle:(nullable NSString *)title message:(nullable NSString *)message preferredStyle:(SPAlertControllerStyle)preferredStyle animationType:(SPAlertAnimationType)animationType;
- (void)addAction:(SPAlertAction *)action;
@property (nonatomic, readonly) NSArray<SPAlertAction *> *actions;
/* 添加文本输入框
* (,block块里面自由定制textFiled,textField的属性,,addTarget,);
*/
- (void)addTextFieldWithConfigurationHandler:(void (^ __nullable)(UITextField *textField))configurationHandler;
@property(nullable, nonatomic, readonly) NSArray<UITextField *> *textFields;
/** 主标题 */
@property(nullable, nonatomic, copy) NSString *title;
/** 副标题 */
@property(nullable, nonatomic, copy) NSString *message;
/** 主标题(富文本) */
@property(nullable, nonatomic, copy) NSAttributedString *attributedTitle;
/** 副标题(富文本) */
@property(nullable, nonatomic, copy) NSAttributedString *attributedMessage;
/** 头部图标位置处于title之上,大小取决于图片本身大小 */
@property(nullable,nonatomic, copy) UIImage *image;
/** 主标题颜色 */
@property(nonatomic, strong) UIColor *titleColor;
/** 主标题字体,默认18,加粗 */
@property(nonatomic, strong) UIFont *titleFont;
/** 副标题颜色 */
@property(nonatomic, strong) UIColor *messageColor;
/** 副标题字体,默认16,未加粗 */
@property(nonatomic, strong) UIFont *messageFont;
/** 对齐方式(包括主标题和副标题) */
@property(nonatomic, assign) NSTextAlignment textAlignment;
/** 头部图标的限制大小,默认无穷大 */
@property (nonatomic, assign) CGSize imageLimitSize;
/** 图片的tintColor,当外部的图片使用了UIImageRenderingModeAlwaysTemplate时,该属性可起到作用 */
@property (nonatomic, strong) UIColor *imageTintColor;
/*
* action水平排列还是垂直排列
* actionSheet样式下:UILayoutConstraintAxisVertical(), UILayoutConstraintAxisHorizontal()action之外的其余action将水平排列
* alert样式下:actions的个数大于2action的title显示不全时为UILayoutConstraintAxisVertical()UILayoutConstraintAxisHorizontal()action的排列方式
*
*/
@property(nonatomic) UILayoutConstraintAxis actionAxis;
/* 距离屏幕边缘的最小间距
* alert样式下该属性是指对话框四边与屏幕边缘之间的距离actionSheet样式下是指弹出边的对立边与屏幕之间的距离70
*/
@property(nonatomic, assign) CGFloat minDistanceToEdges;
/** SPAlertControllerStyleAlert样式下默认6.0fSPAlertControllerStyleActionSheet样式下默认13.0f去除半径设置为0即可 */
@property(nonatomic, assign) CGFloat cornerRadius;
/** 对话框的偏移量y值为正向下偏移为负向上偏移x值为正向右偏移为负向左偏移该属性只对SPAlertControllerStyleAlert样式有效,键盘的frame改变会自动偏移如果手动设置偏移只会取手动设置的 */
@property(nonatomic, assign) CGPoint offsetForAlert;
/** 设置alert样式下的偏移量,动画为NO则跟属性offsetForAlert等效 */
- (void)setOffsetForAlert:(CGPoint)offsetForAlert animated:(BOOL)animated;
/** 是否需要对话框拥有毛玻璃,默认为YES */
@property(nonatomic, assign) BOOL needDialogBlur;
/** 是否单击背景退出对话框,默认为YES */
@property(nonatomic, assign) BOOL tapBackgroundViewDismiss;
@property(nonatomic, weak) id<SPAlertControllerDelegate> delegate;
@property(nonatomic, readonly) SPAlertControllerStyle preferredStyle;
@property(nonatomic, readonly) SPAlertAnimationType animationType;
/** 设置action与下一个action之间的间距, action仅限于非取消样式必须在'-addAction:'之后设置iOS11或iOS11以上才能使用 */
- (void)setCustomSpacing:(CGFloat)spacing afterAction:(SPAlertAction *)action API_AVAILABLE(ios(11.0));
- (CGFloat)customSpacingAfterAction:(SPAlertAction *)action API_AVAILABLE(ios(11.0));
/** 设置蒙层的外观样式,可通过alpha调整透明度 */
- (void)setBackgroundViewAppearanceStyle:(UIBlurEffectStyle)style alpha:(CGFloat)alpha;
// 插入一个组件view位置处于头部和action部分之间要求头部和action部分同时存在
- (void)insertComponentView:(nonnull UIView *)componentView;
// ---------------------------------------------- custom -----------------------------------------------------
/**
()
@param customAlertView view
@param preferredStyle
@param animationType
@return
*/
+ (instancetype)alertControllerWithCustomAlertView:(nonnull UIView *)customAlertView preferredStyle:(SPAlertControllerStyle)preferredStyle animationType:(SPAlertAnimationType)animationType;
/**
()
@param customHeaderView view
@param preferredStyle
@param animationType
@return
*/
+ (instancetype)alertControllerWithCustomHeaderView:(nonnull UIView *)customHeaderView preferredStyle:(SPAlertControllerStyle)preferredStyle animationType:(SPAlertAnimationType)animationType;
/**
(action部分)
@param customActionSequenceView action部分的自定义view
@param title
@param message
@param preferredStyle
@param animationType
@return
*/
+ (instancetype)alertControllerWithCustomActionSequenceView:(nonnull UIView *)customActionSequenceView title:(nullable NSString *)title message:(nullable NSString *)message preferredStyle:(SPAlertControllerStyle)preferredStyle animationType:(SPAlertAnimationType)animationType;
/** 更新自定义view的size比如屏幕旋转自定义view的大小发生了改变可通过该方法更新size */
- (void)updateCustomViewSize:(CGSize)size;
@property(nonatomic, assign) CGFloat cornerRadiusForAlert NS_DEPRECATED_IOS(8_0, 8_0,"Use cornerRadius instead");
@property (nonatomic, assign) CGFloat maxTopMarginForActionSheet NS_DEPRECATED_IOS(8_0, 8_0,"Use minDistanceToEdges instead");
@property(nonatomic, assign) CGFloat maxMarginForAlert NS_DEPRECATED_IOS(8_0, 8_0,"Use minDistanceToEdges instead");
@property(nonatomic, assign) NSInteger maxNumberOfActionHorizontalArrangementForAlert NS_DEPRECATED_IOS(8_0, 8_0,"Use actionAxis instead");
@property(nonatomic, assign) CGFloat offsetYForAlert NS_DEPRECATED_IOS(8_0, 8_0,"Use offsetForAlert instead");
+ (instancetype)alertControllerWithTitle:(nullable NSString *)title message:(nullable NSString *)message preferredStyle:(SPAlertControllerStyle)preferredStyle animationType:(SPAlertAnimationType)animationType customView:(nullable UIView *)customView NS_DEPRECATED_IOS(8_0, 8_0,"Use +alertControllerWithCustomAlertView:preferredStyle:animationType:");
+ (instancetype)alertControllerWithPreferredStyle:(SPAlertControllerStyle)preferredStyle animationType:(SPAlertAnimationType)animationType customHeaderView:(nullable UIView *)customHeaderView NS_DEPRECATED_IOS(8_0, 8_0,"Use +alertControllerWithCustomHeaderView:preferredStyle:animationType:");
+ (instancetype)alertControllerWithTitle:(nullable NSString *)title message:(nullable NSString *)message preferredStyle:(SPAlertControllerStyle)preferredStyle animationType:(SPAlertAnimationType)animationType customCenterView:(nullable UIView *)customCenterView NS_DEPRECATED_IOS(8_0, 8_0,"Use -insertComponentView:");
+ (instancetype)alertControllerWithTitle:(nullable NSString *)title message:(nullable NSString *)message preferredStyle:(SPAlertControllerStyle)preferredStyle animationType:(SPAlertAnimationType)animationType customFooterView:(nullable UIView *)customFooterView NS_DEPRECATED_IOS(8_0, 8_0,"Use +alertControllerWithCustomActionSequenceView:title:message:preferredStyle:animationType:");
@end
@protocol SPAlertControllerDelegate <NSObject>
@optional;
- (void)willPresentAlertController:(SPAlertController *)alertController; // 将要present
- (void)didPresentAlertController:(SPAlertController *)alertController; // 已经present
- (void)willDismissAlertController:(SPAlertController *)alertController; // 将要dismiss
- (void)didDismissAlertController:(SPAlertController *)alertController; // 已经dismiss
- (void)sp_alertControllerWillShow:(SPAlertController *)alertController NS_DEPRECATED_IOS(8_0, 8_0,"Use -willPresentAlertController:");
- (void)sp_alertControllerDidShow:(SPAlertController *)alertController NS_DEPRECATED_IOS(8_0, 8_0,"Use -DidPresentAlertController:");
- (void)sp_alertControllerWillHide:(SPAlertController *)alertController NS_DEPRECATED_IOS(8_0, 8_0,"Use -willDismissAlertController:");
- (void)sp_alertControllerDidHide:(SPAlertController *)alertController NS_DEPRECATED_IOS(8_0, 8_0,"Use -DidDismissAlertController:");
@end
@interface SPAlertPresentationController : UIPresentationController
@end
@interface SPAlertAnimation : NSObject <UIViewControllerAnimatedTransitioning>
+ (instancetype)animationIsPresenting:(BOOL)presenting;
@end
NS_ASSUME_NONNULL_END

File diff suppressed because it is too large Load Diff

View File

@ -114,7 +114,9 @@
[IfishUserDefaultHelper chageLevlelGrad:gradeNum];
}
// 广
[self setAdViewVC];
// [self setAdViewVC];
//广
[self setAppTabRoot];
}
@ -188,9 +190,23 @@
//
-(void)setAppTabRoot{
UserModel*model=[dataContorl getUserInfo];
NSUserDefaults*userdefult=[NSUserDefaults standardUserDefaults];
BOOL skiped =[userdefult boolForKey:[CommonUtils getNotNilStr:model.unionId]];
if (!skiped&&[CommonUtils getNotNilStr:model.phoneNumber].length==0&&[CommonUtils getNotNilStr:model.unionId].length)
{
IfishMianTabViewController *mianVC=[[IfishMianTabViewController alloc] init];
[UIApplication sharedApplication].delegate.window.rootViewController=mianVC;
RegistViewController*revv=[[RegistViewController alloc]init];
revv.isBind=YES;
revv.isFromLogin=YES;
[UIApplication sharedApplication].delegate.window.rootViewController=revv;;
}
else
{
IfishMianTabViewController *mianVC=[[IfishMianTabViewController alloc] init];
[UIApplication sharedApplication].delegate.window.rootViewController=mianVC;
}
}
-(void)bindPhone

View File

@ -16,6 +16,7 @@
#import "HitbarWifeVc.h"
#import "SVProgressHUD.h"
#import "ConAquarMethodVC.h"
#import "ConfigWifiViewController.h"
@interface IfishBindDeviceSelectViewController ()<UITableViewDelegate,UITableViewDataSource>
@property (nonatomic,strong) UITableView *tableView;
@ -163,7 +164,7 @@ extern BOOL isfromCameraView;
//
// }
self.hidesBottomBarWhenPushed = YES;
ConAquarMethodVC *methodVC = InitObject(ConAquarMethodVC);
ConfigWifiViewController *methodVC = [[ConfigWifiViewController alloc]init];
methodVC.deviceType=DEVICEAQUARIUM;
// SecondConnectWifiController *wifivc=[[SecondConnectWifiController alloc]init];
// wifivc.vcTitle=@"连接水族箱";

View File

@ -200,6 +200,18 @@ typedef NS_ENUM(NSUInteger, SmartDeviceType) {
DEVICEHEATING,
DEVICEPETS
};
typedef NS_ENUM(NSUInteger, ConnectType) {
///腾讯airkiss
ConnectTypeAirKiss = 1,
/// 智能配网
ConnectTypeSmartESPTouch ,
/// 热点配网
ConnectTypeAP
};
#define Ali_Push_APPKey @"26007228"
#define Ali_Push_APPSecret @"87c9206424399968ba11a56a9a979cfe"

View File

@ -9,33 +9,33 @@
#import "LXWaveProgressView.h"
#import "StoreNameView.h"
#import "EspTouchDelegateImpl.h"
@interface ConfigWfiViewController : BaseViewController
@property (weak, nonatomic) IBOutlet UIImageView *wifigifImgView;
@interface ConfigWifiViewController : BaseViewController
@property (weak, nonatomic) IBOutlet UILabel *wifiNamelabel;
@property (weak, nonatomic) IBOutlet UITextField *wifiTextFiled;
@property (weak, nonatomic) IBOutlet UILabel *redTextLable;
@property (nonatomic, strong) UIView *mask;
@property (nonatomic, strong) StoreNameView *storeNameView;
@property (nonatomic, strong) NSString *storeName;
- (IBAction)makeSureButton:(id)sender;
- (IBAction)lickHereBtnClicked:(id)sender;
@property (weak, nonatomic) IBOutlet UILabel *attentionLabel;
- (IBAction)connectTypeClick:(id)sender;
@property (weak, nonatomic) IBOutlet UILabel *connectTypeTitle;
@property (weak, nonatomic) IBOutlet UIButton *shuoMingShuBtn;
@property(nonatomic,strong)NSString*ssid;
@property(nonatomic,strong)NSString*wifiPass;
@property(nonatomic,strong)NSString*bssid;
@property(nonatomic,strong)NSString*deviceBssid;
@property (weak, nonatomic) IBOutlet UIButton *shareButton;
@property (weak, nonatomic) IBOutlet LXWaveProgressView *waveProgressView;
@property (weak, nonatomic) IBOutlet UIButton *connectTypeBtn;
@property (weak, nonatomic) IBOutlet UIButton *shuoMingShuBtn;
@property (weak, nonatomic) IBOutlet UIImageView *nodImg;
@property (weak, nonatomic) IBOutlet UILabel *connectTipLbl;
@property (weak, nonatomic) IBOutlet UIButton *connectBtn;
@property(nonatomic,copy)NSString*vcTitle;
//界面复用 设备类型
@property (assign, nonatomic) SmartDeviceType deviceType;
//配网配型
@property (assign, nonatomic) ConnectType connectType;
@end

View File

@ -6,7 +6,8 @@
// Copyright © 2016 imac. All rights reserved.
//
#import "ConfigWfiViewController.h"
#import "SPAlertController.h"
#import "ConfigWifiViewController.h"
#import <SystemConfiguration/CaptiveNetwork.h>
#import "DeviceModel.h"
#import "SaySomethingViewController.h"
@ -40,7 +41,7 @@ typedef NS_ENUM(NSInteger,lodingViewdissMissStyle) {
lodingViewdissMissAlreadyBinded
};
@interface ConfigWfiViewController ()<UITextFieldDelegate>
@interface ConfigWifiViewController ()<UITextFieldDelegate>
@property (nonatomic, strong) NSCondition *_condition;
@property (atomic, strong) ESPTouchTask *_esptouchTask;
@property (nonatomic, strong) EspTouchDelegateImpl *_esptouchDelegate;
@ -63,16 +64,17 @@ Strong CLLocationManager *locationManager;//iOS13,获取WiFi名称必须开启
//extern BOOL formLogIn;//
extern BOOL isfromCameraView;
@implementation ConfigWfiViewController
@implementation ConfigWifiViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
self.view.backgroundColor=[UIColor whiteColor];
self.connectType = ConnectTypeAirKiss;
_deviceArry =[[NSMutableArray alloc]init];
[self updateUI];
//UI
_wifiTextFiled.delegate=self;
_wifiTextFiled.layer.masksToBounds=YES;
@ -102,7 +104,7 @@ extern BOOL isfromCameraView;
UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithTitle:@"" style:UIBarButtonItemStylePlain target:nil action:nil];
self.navigationItem.backBarButtonItem = item;
[self.shuoMingShuBtn addTarget:self action:@selector(shuoMingShuBtnAction:) forControlEvents:UIControlEventTouchUpInside];
[self creatConnectStateUI];
//WiFi
@ -110,21 +112,7 @@ extern BOOL isfromCameraView;
}
- (void)updateUI {
CGFloat yOffset = 0;
if (is_iPhone_X) {
yOffset = 20 + 88;
} else {
yOffset = 20 + 64;
}
self.nodImg.frame = CGRectMake(12, yOffset, 10, 10);
self.wifiNamelabel.frame = CGRectMake(23, yOffset - 18 + 5, 336, 36);
self.attentionLabel.frame=CGRectMake(30, CGRectGetMidY(self.waveProgressView.frame), kScreenWidth-60, 130);
[self.view bringSubviewToFront:self.attentionLabel];
[self.view bringSubviewToFront:self.connectTipLbl];
[self.view bringSubviewToFront:self.connectBtn];
}
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
@ -137,7 +125,42 @@ extern BOOL isfromCameraView;
}
#pragma mark -
-(void)shuoMingShuBtnAction:(UIButton *)btn{
-(void)connectTypeClick:(UIButton *)btn
{
WEAK_SELF;
NSString*airkisTitle = @"一键联网";
NSString*smartTitle = @"快捷联网";
NSString*apTitle = @"AP联网";
SPAlertController*alert =[SPAlertController alertControllerWithTitle:nil message:nil preferredStyle:SPAlertControllerStyleActionSheet animationType:SPAlertAnimationTypeDefault];
SPAlertAction*airkiss =[SPAlertAction actionWithTitle:airkisTitle style:SPAlertActionStyleDefault handler:^(SPAlertAction * _Nonnull action) {
weakSelf.connectType = ConnectTypeAirKiss;
weakSelf.connectTypeTitle.text = airkisTitle;
}];
SPAlertAction*smart =[SPAlertAction actionWithTitle:smartTitle style:SPAlertActionStyleDefault handler:^(SPAlertAction * _Nonnull action) {
weakSelf.connectType = ConnectTypeSmartESPTouch;
weakSelf.connectTypeTitle.text = smartTitle;
}];
SPAlertAction*ap =[SPAlertAction actionWithTitle:apTitle style:SPAlertActionStyleDefault handler:^(SPAlertAction * _Nonnull action) {
weakSelf.connectType = ConnectTypeSmartESPTouch;
weakSelf.connectTypeTitle.text = apTitle;
}];
SPAlertAction*cancel =[SPAlertAction actionWithTitle:@"取消" style:SPAlertActionStyleCancel handler:^(SPAlertAction * _Nonnull action) {
}];
[alert addAction:airkiss];
[alert addAction:smart];
[alert addAction:ap];
[alert addAction:cancel];
[self presentViewController:alert animated:YES completion:nil];
}
-(IBAction)shuoMingShuBtnAction:(UIButton *)btn{
// PushMasssageWebViewController*webVC=[[PushMasssageWebViewController alloc]init];
// webVC.pushlink =IFISH_DEVCEITROURL;
@ -153,7 +176,6 @@ extern BOOL isfromCameraView;
}
-(void)creatConnectStateUI{
[self connectNormalView];
@ -172,7 +194,7 @@ extern BOOL isfromCameraView;
yOffset = 64;
}
IfishConnectingView *connectingView=[[IfishConnectingView alloc] initWithFrame:CGRectMake(0,yOffset, kScreenSize.width, CGRectGetMaxY(self.wifiTextFiled.frame))];
IfishConnectingView *connectingView=[[IfishConnectingView alloc] initWithFrame:self.connectTipLbl.frame];
self.connectingView =connectingView;
@ -184,9 +206,9 @@ extern BOOL isfromCameraView;
self.wifiTextFiled.hidden = NO;
self.connectTipLbl.hidden = NO;
self.connectBtn.hidden = NO;
self.shareButton.hidden = NO;
self.nodImg.hidden = NO;
self.redTextLable.hidden=NO;
self.connectTypeBtn.hidden = NO;
}else{
@ -202,9 +224,9 @@ extern BOOL isfromCameraView;
self.wifiTextFiled.hidden = NO;
self.connectTipLbl.hidden = NO;
self.connectBtn.hidden = NO;
self.shareButton.hidden = NO;
self.nodImg.hidden = NO;
self.redTextLable.hidden=NO;
self.connectTypeBtn.hidden = NO;
}];
}
@ -225,13 +247,12 @@ extern BOOL isfromCameraView;
}];
self.wifiNamelabel.hidden = YES;
self.wifiTextFiled.hidden = YES;
// self.wifiNamelabel.hidden = YES;
// self.wifiTextFiled.hidden = YES;
self.connectTipLbl.hidden = YES;
self.connectBtn.hidden = YES;
self.shareButton.hidden = YES;
self.nodImg.hidden = YES;
self.redTextLable.hidden=YES;
self.connectTypeBtn.hidden = YES;
}
@ -262,8 +283,8 @@ extern BOOL isfromCameraView;
CGFloat LabelTitleH = 20;
_maclabel.frame = CGRectMake(kScreenSize.width/2-LabelTitleW/2,CGRectGetMaxY(self.wifiTextFiled.frame)+20, LabelTitleW, LabelTitleH);
[self.view addSubview:_maclabel];
[self.view bringSubviewToFront:_maclabel];
// [self.view addSubview:_maclabel];
// [self.view bringSubviewToFront:_maclabel];
self.bakbutton.userInteractionEnabled=YES;
[self connectNormalView];
@ -352,13 +373,7 @@ extern BOOL isfromCameraView;
}
-(void)initWifiImage{
dispatch_async(dispatch_get_main_queue(), ^{
self.wifigifImgView.animationImages=[NSArray arrayWithObjects:[UIImage imageNamed:@"fish_png_0"],[UIImage imageNamed:@"fish_png_1"],[UIImage imageNamed:@"fish_png_2"],[UIImage imageNamed:@"fish_png_3"], nil];
self.wifigifImgView.animationDuration=2;
self.wifigifImgView.animationRepeatCount=0;
[self.wifigifImgView startAnimating];
});
}
/*
@ -480,7 +495,8 @@ extern BOOL isfromCameraView;
[attributedString addAttribute:NSForegroundColorAttributeName value:[UIColor colorWithRed:0 green:170.0/255.0 blue:218.0/255.0 alpha:1] range:NSMakeRange(msg.length - 3 -_ssid.length,_ssid.length)];
[attributedString addAttribute:NSParagraphStyleAttributeName value:paraghStyle range:NSMakeRange(0, msg.length)];
[_wifiNamelabel setAttributedText:attributedString];
// [_wifiNamelabel setAttributedText:attributedString];
_wifiNamelabel.text=_ssid;
_wifiTextFiled.secureTextEntry=NO;
_wifiTextFiled.text=pass;
_wifiTextFiled.clearButtonMode=UITextFieldViewModeAlways;
@ -874,7 +890,7 @@ extern BOOL isfromCameraView;
CGRect keyboardFrame = [notification.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];
CGRect buttonRect = [self.shareButton convertRect:self.shareButton.bounds toView:self.view];
CGRect buttonRect = [self.connectBtn convertRect:self.connectBtn.bounds toView:self.view];
CGFloat buttonMargin =(buttonRect.origin.y + buttonRect.size.height + 10);

View File

@ -9,9 +9,16 @@
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="ConfigWfiViewController">
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="ConfigWifiViewController">
<connections>
<outlet property="connectBtn" destination="kvd-IO-pFg" id="9zS-Oh-1HY"/>
<outlet property="connectTipLbl" destination="5UF-8K-mpU" id="hRK-s6-f1Q"/>
<outlet property="connectTypeBtn" destination="HuT-1B-gI8" id="V75-g5-TD2"/>
<outlet property="connectTypeTitle" destination="D54-Zo-SRM" id="Rrc-ji-Mi6"/>
<outlet property="shuoMingShuBtn" destination="a2I-Bk-68I" id="iYV-KF-6No"/>
<outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
<outlet property="wifiNamelabel" destination="jcI-qI-bgh" id="Pyn-aG-AwP"/>
<outlet property="wifiTextFiled" destination="O5l-oe-jwK" id="1cb-av-PV9"/>
</connections>
</placeholder>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
@ -19,8 +26,8 @@
<rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="AP联网" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="D54-Zo-SRM">
<rect key="frame" x="40" y="64" width="353" height="40"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="一键联网" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="D54-Zo-SRM" userLabel="connectTypeTitle">
<rect key="frame" x="40" y="109" width="353" height="40"/>
<constraints>
<constraint firstAttribute="height" constant="40" id="rFI-Mh-k80"/>
</constraints>
@ -28,21 +35,21 @@
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="选择路由器Wifi" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="d6V-cd-toE">
<rect key="frame" x="40" y="114" width="353" height="28"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="选择路由器WIFI" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="d6V-cd-toE">
<rect key="frame" x="40" y="159" width="353" height="28"/>
<fontDescription key="fontDescription" type="system" pointSize="20"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<view alpha="0.5" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="KU2-2N-7iz" userLabel="LINE1">
<rect key="frame" x="0.0" y="167" width="393" height="1"/>
<rect key="frame" x="0.0" y="212" width="393" height="1"/>
<color key="backgroundColor" systemColor="systemGrayColor"/>
<constraints>
<constraint firstAttribute="height" constant="1" id="Ggw-78-EwX"/>
</constraints>
</view>
<view alpha="0.5" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="GWP-4K-9X8" userLabel="LINE2">
<rect key="frame" x="0.0" y="224" width="393" height="1"/>
<rect key="frame" x="0.0" y="269" width="393" height="1"/>
<color key="backgroundColor" systemColor="systemGrayColor"/>
<constraints>
<constraint firstAttribute="height" constant="1" id="YUb-zQ-H2L"/>
@ -50,7 +57,7 @@
</constraints>
</view>
<view alpha="0.5" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="504-kU-hp3" userLabel="LINE3">
<rect key="frame" x="0.0" y="281" width="393" height="1"/>
<rect key="frame" x="0.0" y="326" width="393" height="1"/>
<color key="backgroundColor" systemColor="systemGrayColor"/>
<constraints>
<constraint firstAttribute="height" constant="1" id="B1x-Qm-fkd"/>
@ -58,8 +65,8 @@
<constraint firstAttribute="height" relation="lessThanOrEqual" constant="1" id="a9t-4R-smW"/>
</constraints>
</view>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="WIFI" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bau-WU-WAP">
<rect key="frame" x="40" y="168" width="40" height="56"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="WIFI:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bau-WU-WAP">
<rect key="frame" x="40" y="213" width="40" height="56"/>
<constraints>
<constraint firstAttribute="width" constant="40" id="OXx-1w-lyH"/>
</constraints>
@ -67,18 +74,19 @@
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="248" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="888888" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="lSV-Rv-Ga4" userLabel="wifiName">
<rect key="frame" x="85" y="168" width="303" height="56"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jcI-qI-bgh" userLabel="wifiNamelabel">
<rect key="frame" x="85" y="213" width="303" height="56"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="248" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="888888" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="O5l-oe-jwK" userLabel="wifiTextFiled">
<rect key="frame" x="85" y="270" width="303" height="56"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<textInputTraits key="textInputTraits"/>
</textField>
<textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="248" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="888888" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="O5l-oe-jwK" userLabel="password">
<rect key="frame" x="85" y="225" width="303" height="56"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<textInputTraits key="textInputTraits"/>
</textField>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="密码" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Dv9-sQ-6QZ">
<rect key="frame" x="40" y="225" width="40" height="56"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="密码:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Dv9-sQ-6QZ">
<rect key="frame" x="40" y="270" width="40" height="56"/>
<constraints>
<constraint firstAttribute="width" constant="40" id="hps-ui-SC7"/>
</constraints>
@ -86,66 +94,112 @@
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="5UF-8K-mpU">
<rect key="frame" x="40" y="347" width="313" height="129"/>
<string key="text">1、插座仅支持2.4G的WiFi网络不支持5G及双频合一的网络(需在路由器设置中分开)
2、先长按插座复位键13秒左右松手后红灯绿灯同时熄灭只有绿灯偶尔闪烁再点下一步。</string>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="5UF-8K-mpU" userLabel="connectTipLbl">
<rect key="frame" x="40" y="357" width="313" height="193.33333333333337"/>
<string key="text">1、插座仅支持2.4G的WiFi网络不支持5G 及 双频合一的网络(需在路由器设置中分开)
2、先长按插座复位键3秒松手后红灯绿灯同时 闪烁,再点确定按钮。
3、如多次尝试一键联网都不成功可切换其他 联网方式,每次重新连接时插座需断一次电
然后重新复位连接。</string>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
<color key="textColor" systemColor="systemGrayColor"/>
<nil key="highlightedColor"/>
</label>
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="HuT-1B-gI8">
<rect key="frame" x="133" y="579" width="128" height="35"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="HuT-1B-gI8" userLabel="connectTypeBtn">
<rect key="frame" x="30" y="658" width="333" height="40"/>
<constraints>
<constraint firstAttribute="height" constant="40" id="Qry-ak-u1g"/>
</constraints>
<color key="tintColor" systemColor="labelColor"/>
<state key="normal" title="Button"/>
<buttonConfiguration key="configuration" style="plain" title="其他联网方式"/>
<connections>
<action selector="connectTypeClick:" destination="-1" eventType="touchUpInside" id="TDB-eA-ie0"/>
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="kvd-IO-pFg">
<rect key="frame" x="179" y="699" width="75" height="35"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="kvd-IO-pFg" userLabel="connectBtn">
<rect key="frame" x="71.666666666666686" y="728" width="250" height="60"/>
<color key="backgroundColor" red="0.17318186159999999" green="0.3044036329" blue="0.60787320140000001" alpha="1" colorSpace="custom" customColorSpace="displayP3"/>
<constraints>
<constraint firstAttribute="width" constant="250" id="1dZ-qd-hod"/>
<constraint firstAttribute="height" constant="60" id="9fL-Vd-J5H"/>
</constraints>
<color key="tintColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<state key="normal" title="Button"/>
<buttonConfiguration key="configuration" style="plain" title="Button"/>
<buttonConfiguration key="configuration" style="plain" title="确定"/>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
<integer key="value" value="5"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
<connections>
<action selector="makeSureButton:" destination="-1" eventType="touchUpInside" id="h8y-wU-RjA"/>
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="a2I-Bk-68I" userLabel="shuoMingShuBtn">
<rect key="frame" x="288" y="64" width="100" height="40"/>
<constraints>
<constraint firstAttribute="height" constant="40" id="Keg-ao-If4"/>
<constraint firstAttribute="width" constant="100" id="MZZ-Qp-awh"/>
</constraints>
<color key="tintColor" systemColor="labelColor"/>
<state key="normal" title="Button"/>
<buttonConfiguration key="configuration" style="plain" title="联网视频"/>
<connections>
<action selector="shuoMingShuBtnAction:" destination="-1" eventType="touchUpInside" id="GNn-Aq-dIA"/>
</connections>
</button>
</subviews>
<viewLayoutGuide key="safeArea" id="Q5M-cg-NOt"/>
<color key="backgroundColor" systemColor="systemBackgroundColor"/>
<constraints>
<constraint firstItem="jcI-qI-bgh" firstAttribute="top" secondItem="KU2-2N-7iz" secondAttribute="bottom" id="0U3-tJ-Q5O"/>
<constraint firstItem="bau-WU-WAP" firstAttribute="top" secondItem="KU2-2N-7iz" secondAttribute="bottom" id="0Y1-uV-RKo"/>
<constraint firstItem="Dv9-sQ-6QZ" firstAttribute="width" secondItem="bau-WU-WAP" secondAttribute="width" id="3Q7-cI-5XB"/>
<constraint firstItem="O5l-oe-jwK" firstAttribute="leading" secondItem="bau-WU-WAP" secondAttribute="trailing" constant="5" id="4hQ-cG-kYJ"/>
<constraint firstItem="jcI-qI-bgh" firstAttribute="leading" secondItem="bau-WU-WAP" secondAttribute="trailing" constant="5" id="6Go-zM-V5I"/>
<constraint firstItem="504-kU-hp3" firstAttribute="top" secondItem="Dv9-sQ-6QZ" secondAttribute="bottom" id="6RC-ho-4Dn"/>
<constraint firstItem="5UF-8K-mpU" firstAttribute="leading" secondItem="D54-Zo-SRM" secondAttribute="leading" id="9R4-5o-lSr"/>
<constraint firstItem="GWP-4K-9X8" firstAttribute="top" secondItem="KU2-2N-7iz" secondAttribute="bottom" constant="56" id="Bq7-hp-6Lo"/>
<constraint firstItem="a2I-Bk-68I" firstAttribute="top" secondItem="Q5M-cg-NOt" secondAttribute="top" constant="5" id="Cyr-QV-PxZ"/>
<constraint firstItem="Q5M-cg-NOt" firstAttribute="trailing" secondItem="D54-Zo-SRM" secondAttribute="trailing" id="Hf1-wn-RJy"/>
<constraint firstItem="kvd-IO-pFg" firstAttribute="centerX" secondItem="i5M-Pr-FkT" secondAttribute="centerX" id="ItS-yz-iS6"/>
<constraint firstItem="Dv9-sQ-6QZ" firstAttribute="top" secondItem="GWP-4K-9X8" secondAttribute="bottom" id="JdG-rw-7pj"/>
<constraint firstItem="GWP-4K-9X8" firstAttribute="top" secondItem="bau-WU-WAP" secondAttribute="bottom" id="Jud-yA-Dhw"/>
<constraint firstItem="GWP-4K-9X8" firstAttribute="top" secondItem="lSV-Rv-Ga4" secondAttribute="bottom" id="N4b-hg-dnv"/>
<constraint firstItem="Q5M-cg-NOt" firstAttribute="trailing" secondItem="HuT-1B-gI8" secondAttribute="trailing" constant="30" id="Jwb-UH-UZV"/>
<constraint firstItem="504-kU-hp3" firstAttribute="top" secondItem="GWP-4K-9X8" secondAttribute="bottom" constant="56" id="NlV-Pp-gJe"/>
<constraint firstItem="GWP-4K-9X8" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="Nn7-ML-5NQ"/>
<constraint firstItem="Q5M-cg-NOt" firstAttribute="trailing" secondItem="lSV-Rv-Ga4" secondAttribute="trailing" constant="5" id="PHN-a8-Mu6"/>
<constraint firstItem="GWP-4K-9X8" firstAttribute="top" secondItem="jcI-qI-bgh" secondAttribute="bottom" id="PMc-8l-dZ5"/>
<constraint firstAttribute="trailing" secondItem="KU2-2N-7iz" secondAttribute="trailing" id="ScV-Mc-DSL"/>
<constraint firstItem="d6V-cd-toE" firstAttribute="top" secondItem="D54-Zo-SRM" secondAttribute="bottom" constant="10" id="T0l-Go-Skc"/>
<constraint firstItem="lSV-Rv-Ga4" firstAttribute="leading" secondItem="bau-WU-WAP" secondAttribute="trailing" constant="5" id="Vnq-k1-bAf"/>
<constraint firstItem="d6V-cd-toE" firstAttribute="height" secondItem="D54-Zo-SRM" secondAttribute="height" multiplier="0.7" id="Wza-N7-ID2"/>
<constraint firstItem="lSV-Rv-Ga4" firstAttribute="top" secondItem="KU2-2N-7iz" secondAttribute="bottom" id="aGq-id-2ho"/>
<constraint firstItem="d6V-cd-toE" firstAttribute="width" secondItem="D54-Zo-SRM" secondAttribute="width" id="b3I-hV-c0S"/>
<constraint firstItem="5UF-8K-mpU" firstAttribute="top" secondItem="504-kU-hp3" secondAttribute="bottom" constant="65" id="bOQ-i7-FhX"/>
<constraint firstItem="5UF-8K-mpU" firstAttribute="top" secondItem="504-kU-hp3" secondAttribute="bottom" constant="30" id="bOQ-i7-FhX"/>
<constraint firstItem="504-kU-hp3" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="dNE-rL-Cpm"/>
<constraint firstItem="Q5M-cg-NOt" firstAttribute="trailing" secondItem="jcI-qI-bgh" secondAttribute="trailing" constant="5" id="fQH-un-MCI"/>
<constraint firstItem="O5l-oe-jwK" firstAttribute="top" secondItem="GWP-4K-9X8" secondAttribute="bottom" id="fhx-vJ-8fO"/>
<constraint firstAttribute="trailing" secondItem="504-kU-hp3" secondAttribute="trailing" id="fzi-UL-BQu"/>
<constraint firstItem="HuT-1B-gI8" firstAttribute="leading" secondItem="Q5M-cg-NOt" secondAttribute="leading" constant="30" id="gHv-9W-CS0"/>
<constraint firstItem="D54-Zo-SRM" firstAttribute="leading" secondItem="Q5M-cg-NOt" secondAttribute="leading" constant="40" id="j1H-26-pFi"/>
<constraint firstItem="KU2-2N-7iz" firstAttribute="top" secondItem="d6V-cd-toE" secondAttribute="bottom" constant="25" id="k8R-MO-Htn"/>
<constraint firstItem="d6V-cd-toE" firstAttribute="leading" secondItem="D54-Zo-SRM" secondAttribute="leading" id="lPS-VU-u2K"/>
<constraint firstAttribute="trailing" secondItem="GWP-4K-9X8" secondAttribute="trailing" id="ngC-CB-fCg"/>
<constraint firstItem="D54-Zo-SRM" firstAttribute="top" secondItem="Q5M-cg-NOt" secondAttribute="top" constant="5" id="ns7-Yx-wip"/>
<constraint firstItem="D54-Zo-SRM" firstAttribute="top" secondItem="Q5M-cg-NOt" secondAttribute="top" constant="50" id="ns7-Yx-wip"/>
<constraint firstItem="KU2-2N-7iz" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="obb-p1-4XH"/>
<constraint firstItem="504-kU-hp3" firstAttribute="top" secondItem="O5l-oe-jwK" secondAttribute="bottom" id="oyF-cp-igt"/>
<constraint firstItem="Q5M-cg-NOt" firstAttribute="trailing" secondItem="5UF-8K-mpU" secondAttribute="trailing" constant="40" id="qdx-A1-MzN"/>
<constraint firstItem="Q5M-cg-NOt" firstAttribute="bottom" secondItem="kvd-IO-pFg" secondAttribute="bottom" constant="30" id="sHh-eQ-MJM"/>
<constraint firstItem="bau-WU-WAP" firstAttribute="leading" secondItem="d6V-cd-toE" secondAttribute="leading" id="tSj-er-HwA"/>
<constraint firstItem="HuT-1B-gI8" firstAttribute="bottom" secondItem="kvd-IO-pFg" secondAttribute="top" constant="-30" id="v1E-Ff-HYR"/>
<constraint firstAttribute="trailing" secondItem="a2I-Bk-68I" secondAttribute="trailing" constant="5" id="vDW-Uh-dSJ"/>
<constraint firstAttribute="trailing" secondItem="O5l-oe-jwK" secondAttribute="trailing" constant="5" id="vKy-42-AJV"/>
<constraint firstItem="Dv9-sQ-6QZ" firstAttribute="leading" secondItem="bau-WU-WAP" secondAttribute="leading" id="vwm-go-uFl"/>
</constraints>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
<nil key="value"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
<point key="canvasLocation" x="25.190839694656489" y="-32.394366197183103"/>
</view>
</objects>

View File

@ -1,11 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14460.31" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" colorMatched="YES">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" colorMatched="YES">
<device id="retina4_7" orientation="portrait" appearance="light"/>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14460.20"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21678"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
@ -45,7 +43,7 @@
<color key="textColor" red="0.59999999999999998" green="0.59999999999999998" blue="0.59999999999999998" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="eDA-Ia-DAy">
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="eDA-Ia-DAy">
<rect key="frame" x="224.5" y="114.5" width="50" height="27"/>
<fontDescription key="fontDescription" type="system" pointSize="12"/>
<state key="normal" title="点击这里"/>
@ -61,7 +59,7 @@
<rect key="frame" x="0.0" y="243" width="375" height="426"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" heightSizable="YES"/>
</imageView>
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="38a-MZ-Nbp">
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="38a-MZ-Nbp">
<rect key="frame" x="16" y="493" width="178" height="154"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES"/>
</button>
@ -129,8 +127,8 @@
</view>
</objects>
<resources>
<image name="linkingdevice_botton.png" width="84" height="44"/>
<image name="linkingdevice_point.png" width="9" height="9"/>
<image name="linkingdevice_setting.png" width="360" height="404"/>
<image name="linkingdevice_botton.png" width="84.5" height="44"/>
<image name="linkingdevice_point.png" width="9.5" height="9.5"/>
<image name="linkingdevice_setting.png" width="360" height="404.5"/>
</resources>
</document>