Browse Source

选择设备类型页面基本完成,未添加点击事件

Kevin 1 năm trước cách đây
mục cha
commit
c4ddff257e
22 tập tin đã thay đổi với 226 bổ sung17 xóa
  1. 6 0
      Temperature.xcodeproj/project.pbxproj
  2. 22 0
      Temperature/Assets.xcassets/DeviceType/type_fluorine_main_controller.imageset/Contents.json
  3. BIN
      Temperature/Assets.xcassets/DeviceType/type_fluorine_main_controller.imageset/type_fluorine_main_controller@2x.png
  4. BIN
      Temperature/Assets.xcassets/DeviceType/type_fluorine_main_controller.imageset/type_fluorine_main_controller@3x.png
  5. 22 0
      Temperature/Assets.xcassets/DeviceType/type_fluorine_sub_controller.imageset/Contents.json
  6. BIN
      Temperature/Assets.xcassets/DeviceType/type_fluorine_sub_controller.imageset/type_fluorine_sub_controller@2x.png
  7. BIN
      Temperature/Assets.xcassets/DeviceType/type_fluorine_sub_controller.imageset/type_fluorine_sub_controller@3x.png
  8. 22 0
      Temperature/Assets.xcassets/DeviceType/type_intelligent_water_collector.imageset/Contents.json
  9. BIN
      Temperature/Assets.xcassets/DeviceType/type_intelligent_water_collector.imageset/type_intelligent_water_collector@2x.png
  10. BIN
      Temperature/Assets.xcassets/DeviceType/type_intelligent_water_collector.imageset/type_intelligent_water_collector@3x.png
  11. 21 0
      Temperature/Assets.xcassets/DeviceType/type_water_main_controller.imageset/Contents.json
  12. BIN
      Temperature/Assets.xcassets/DeviceType/type_water_main_controller.imageset/type_water_main_controller@2x.png
  13. 21 0
      Temperature/Assets.xcassets/DeviceType/type_water_main_controller@2x.imageset/Contents.json
  14. BIN
      Temperature/Assets.xcassets/DeviceType/type_water_main_controller@2x.imageset/type_water_main_controller@2x@3x.png
  15. 22 0
      Temperature/Assets.xcassets/DeviceType/type_water_sub_controller.imageset/Contents.json
  16. BIN
      Temperature/Assets.xcassets/DeviceType/type_water_sub_controller.imageset/type_water_sub_controller@2x.png
  17. BIN
      Temperature/Assets.xcassets/DeviceType/type_water_sub_controller.imageset/type_water_sub_controller@3x.png
  18. 3 12
      Temperature/ControlModule/Home/Controller/RDSSelectDeviceMainVC.m
  19. 16 5
      Temperature/ControlModule/Home/Controller/RDSSelectDeviceSubVC.m
  20. 3 0
      Temperature/ControlModule/Home/Model/RDSDeviceTypeModel.m
  21. 19 0
      Temperature/ControlModule/Home/View/RDSDeviceTypeCell.h
  22. 49 0
      Temperature/ControlModule/Home/View/RDSDeviceTypeCell.m

+ 6 - 0
Temperature.xcodeproj/project.pbxproj

@@ -12,6 +12,7 @@
 		03245AFF2A8E5E2B003DF602 /* RDSDeviceTypeModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 03245AFE2A8E5E2B003DF602 /* RDSDeviceTypeModel.m */; };
 		03D1A3712A8CF47700106033 /* UIFont+Temperature.m in Sources */ = {isa = PBXBuildFile; fileRef = 03D1A3702A8CF47700106033 /* UIFont+Temperature.m */; };
 		03D1A3742A8CF5B200106033 /* UIColor+Temperature.m in Sources */ = {isa = PBXBuildFile; fileRef = 03D1A3732A8CF5B200106033 /* UIColor+Temperature.m */; };
+		03DB89162A9789A900718F10 /* RDSDeviceTypeCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 03DB89152A9789A900718F10 /* RDSDeviceTypeCell.m */; };
 		19F0EABC3C1DE4F3D3AD4610 /* Pods_Temperature.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B774C01636692E126F78C586 /* Pods_Temperature.framework */; };
 		220357E6293466D50081B5B8 /* RDSConstant.m in Sources */ = {isa = PBXBuildFile; fileRef = 220357E5293466D40081B5B8 /* RDSConstant.m */; };
 		220357EA293735BF0081B5B8 /* RDSMemberModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 220357E9293735BF0081B5B8 /* RDSMemberModel.m */; };
@@ -208,6 +209,8 @@
 		03D1A3702A8CF47700106033 /* UIFont+Temperature.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIFont+Temperature.m"; sourceTree = "<group>"; };
 		03D1A3722A8CF5B200106033 /* UIColor+Temperature.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "UIColor+Temperature.h"; sourceTree = "<group>"; };
 		03D1A3732A8CF5B200106033 /* UIColor+Temperature.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIColor+Temperature.m"; sourceTree = "<group>"; };
+		03DB89142A9789A900718F10 /* RDSDeviceTypeCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RDSDeviceTypeCell.h; sourceTree = "<group>"; };
+		03DB89152A9789A900718F10 /* RDSDeviceTypeCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RDSDeviceTypeCell.m; sourceTree = "<group>"; };
 		220357E5293466D40081B5B8 /* RDSConstant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RDSConstant.m; sourceTree = "<group>"; };
 		220357E8293735BF0081B5B8 /* RDSMemberModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RDSMemberModel.h; sourceTree = "<group>"; };
 		220357E9293735BF0081B5B8 /* RDSMemberModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RDSMemberModel.m; sourceTree = "<group>"; };
@@ -841,6 +844,8 @@
 		22A8C240290387B4008B9448 /* View */ = {
 			isa = PBXGroup;
 			children = (
+				03DB89142A9789A900718F10 /* RDSDeviceTypeCell.h */,
+				03DB89152A9789A900718F10 /* RDSDeviceTypeCell.m */,
 				22CC22FF2907830B00E627E9 /* RDSHomeTopView.h */,
 				22CC23002907830B00E627E9 /* RDSHomeTopView.m */,
 				22CC23022907833200E627E9 /* RDSHomeTopView.xib */,
@@ -1554,6 +1559,7 @@
 				22AAFB2229657F1500C54580 /* NSMutableDictionary+addObj.m in Sources */,
 				227AC3E12967AF3A00814FBF /* RDSCtrlModeView.m in Sources */,
 				22CC237D2907921300E627E9 /* GTMBase64.m in Sources */,
+				03DB89162A9789A900718F10 /* RDSDeviceTypeCell.m in Sources */,
 				22CC23322907919400E627E9 /* UIControl+HitRect.m in Sources */,
 				22AFE61C29135DD100793E79 /* RDSLoginPwdCodeVC.m in Sources */,
 				22CC23772907921300E627E9 /* RDSTools.m in Sources */,

+ 22 - 0
Temperature/Assets.xcassets/DeviceType/type_fluorine_main_controller.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "type_fluorine_main_controller@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "type_fluorine_main_controller@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

BIN
Temperature/Assets.xcassets/DeviceType/type_fluorine_main_controller.imageset/type_fluorine_main_controller@2x.png


BIN
Temperature/Assets.xcassets/DeviceType/type_fluorine_main_controller.imageset/type_fluorine_main_controller@3x.png


+ 22 - 0
Temperature/Assets.xcassets/DeviceType/type_fluorine_sub_controller.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "type_fluorine_sub_controller@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "type_fluorine_sub_controller@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

BIN
Temperature/Assets.xcassets/DeviceType/type_fluorine_sub_controller.imageset/type_fluorine_sub_controller@2x.png


BIN
Temperature/Assets.xcassets/DeviceType/type_fluorine_sub_controller.imageset/type_fluorine_sub_controller@3x.png


+ 22 - 0
Temperature/Assets.xcassets/DeviceType/type_intelligent_water_collector.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "type_intelligent_water_collector@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "type_intelligent_water_collector@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

BIN
Temperature/Assets.xcassets/DeviceType/type_intelligent_water_collector.imageset/type_intelligent_water_collector@2x.png


BIN
Temperature/Assets.xcassets/DeviceType/type_intelligent_water_collector.imageset/type_intelligent_water_collector@3x.png


+ 21 - 0
Temperature/Assets.xcassets/DeviceType/type_water_main_controller.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "type_water_main_controller@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

BIN
Temperature/Assets.xcassets/DeviceType/type_water_main_controller.imageset/type_water_main_controller@2x.png


+ 21 - 0
Temperature/Assets.xcassets/DeviceType/type_water_main_controller@2x.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "type_water_main_controller@2x@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

BIN
Temperature/Assets.xcassets/DeviceType/type_water_main_controller@2x.imageset/type_water_main_controller@2x@3x.png


+ 22 - 0
Temperature/Assets.xcassets/DeviceType/type_water_sub_controller.imageset/Contents.json

@@ -0,0 +1,22 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "filename" : "type_water_sub_controller@2x.png",
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "filename" : "type_water_sub_controller@3x.png",
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

BIN
Temperature/Assets.xcassets/DeviceType/type_water_sub_controller.imageset/type_water_sub_controller@2x.png


BIN
Temperature/Assets.xcassets/DeviceType/type_water_sub_controller.imageset/type_water_sub_controller@3x.png


+ 3 - 12
Temperature/ControlModule/Home/Controller/RDSSelectDeviceMainVC.m

@@ -17,7 +17,6 @@
 
 @property (nonatomic, strong) TYTabPagerBar *pagerBar;
 @property (nonatomic, strong) TYPagerController *pagerController;
-@property (nonatomic, strong) NSMutableArray *pagerBarTitleArray;
 
 @end
 
@@ -46,6 +45,7 @@
     self.navigationItem.title = @"选择设备";
     
     self.pagerBar = [[TYTabPagerBar alloc] init];
+    self.pagerBar.backgroundColor = [UIColor colorWithHexString:@"#FBFBFB"];
     self.pagerBar.layout.barStyle = TYPagerBarStyleProgressView;
     self.pagerBar.layout.normalTextColor = [UIColor colorWithHexString:@"#333333"];
     self.pagerBar.layout.selectedTextColor = [UIColor colorWithHexString:@"#14C9C8"];
@@ -57,8 +57,6 @@
     self.pagerBar.layout.cellSpacing = 0;
     self.pagerBar.layout.cellEdging = 0;
     self.pagerBar.layout.sectionInset = UIEdgeInsetsMake(0, 20, 0, 20);
-    self.pagerBar.layout.progressWidth = 28;
-    self.pagerBar.layout.progressHeight = 4;
     self.pagerBar.layout.adjustContentCellsCenter = NO;
     self.pagerBar.dataSource = self;
     self.pagerBar.delegate = self;
@@ -82,7 +80,7 @@
     [self.view addSubview:self.pagerController.view];
     [self.pagerController.view mas_makeConstraints:^(MASConstraintMaker *make) {
         make.left.right.mas_equalTo(0);
-        make.top.equalTo(self.pagerBar.mas_bottom).offset(12);
+        make.top.equalTo(self.pagerBar.mas_bottom);
         make.bottom.equalTo(self.view);
     }];
         
@@ -114,7 +112,7 @@
 
 #pragma mark - TYPagerControllerDataSource
 - (NSInteger)numberOfControllersInPagerController {
-    return self.pagerBarTitleArray.count;
+    return self.deviceTypeModel.deviceTypeList.count;
 }
 
 - (UIViewController *)pagerController:(TYPagerController *)pagerController controllerForIndex:(NSInteger)index prefetching:(BOOL)prefetching {
@@ -134,13 +132,6 @@
 }
 
 #pragma mark - Getter
-- (NSMutableArray *)pagerBarTitleArray {
-    if (!_pagerBarTitleArray) {
-        _pagerBarTitleArray = [NSMutableArray arrayWithObjects:@"氟系统", @"水系统", nil];
-    }
-    return _pagerBarTitleArray;
-}
-
 - (RDSDeviceTypeModel *)deviceTypeModel {
     if (!_deviceTypeModel) {
         _deviceTypeModel = [[RDSDeviceTypeModel alloc] init];

+ 16 - 5
Temperature/ControlModule/Home/Controller/RDSSelectDeviceSubVC.m

@@ -6,6 +6,7 @@
 //
 
 #import "RDSSelectDeviceSubVC.h"
+#import "RDSDeviceTypeCell.h"
 
 @interface RDSSelectDeviceSubVC () <UITableViewDelegate, UITableViewDataSource>
 
@@ -23,10 +24,11 @@
 
 - (void)configSubviews {
     self.tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStyleGrouped];
+    self.tableView.backgroundColor = [UIColor colorWithHexString:@"#FBFBFB"];
     self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
-    self.tableView.rowHeight = 110;
     self.tableView.delegate = self;
     self.tableView.dataSource = self;
+    [self.tableView registerClass:[RDSDeviceTypeCell class] forCellReuseIdentifier:NSStringFromClass([RDSDeviceTypeCell class])];
     [self.view addSubview:self.tableView];
     [self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
         make.left.right.bottom.equalTo(self.view);
@@ -36,10 +38,10 @@
 
 - (void)reloadDataWithDataSource:(NSArray *)dataSource {
     if (!dataSource) {
-        self.dataSource = [NSMutableArray array];
-        return;
+        self.dataSource = [NSArray array];
+    } else {
+        self.dataSource = [dataSource copy];
     }
-    self.dataSource = [dataSource copy];
     [self.tableView reloadData];
 }
 
@@ -53,7 +55,16 @@
 }
 
 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
-    return [[UITableViewCell alloc] init];
+    RDSDeviceTypeCell *cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([RDSDeviceTypeCell class]) forIndexPath:indexPath];
+    cell.deviceTypeModel = self.dataSource[indexPath.section];
+    return cell;
+}
+
+- (NSArray *)dataSource {
+    if (!_dataSource) {
+        _dataSource = [NSArray array];
+    }
+    return _dataSource;
 }
 
 @end

+ 3 - 0
Temperature/ControlModule/Home/Model/RDSDeviceTypeModel.m

@@ -22,6 +22,9 @@
         NSLog(@"responseObject is %@", responseObject);
         if ([responseObject[@"code"] integerValue] == 0) {
             NSDictionary *data = responseObject[@"data"];
+            [RDSDeviceTypeModel mj_setupObjectClassInArray:^NSDictionary *{
+                return @{@"children": @"RDSDeviceTypeModel"};
+            }];
             self->_deviceTypeList = [RDSDeviceTypeModel mj_objectArrayWithKeyValuesArray:data];
             BLOCK_SAFE_RUN(finished, nil)
         } else {

+ 19 - 0
Temperature/ControlModule/Home/View/RDSDeviceTypeCell.h

@@ -0,0 +1,19 @@
+//
+//  RDSDeviceTypeCell.h
+//  Temperature
+//
+//  Created by 姓二名哈字富贵儿 on 2023/8/24.
+//
+
+#import <UIKit/UIKit.h>
+#import "RDSDeviceTypeModel.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface RDSDeviceTypeCell : UITableViewCell
+
+@property (nonatomic, strong) RDSDeviceTypeModel *deviceTypeModel;
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 49 - 0
Temperature/ControlModule/Home/View/RDSDeviceTypeCell.m

@@ -0,0 +1,49 @@
+//
+//  RDSDeviceTypeCell.m
+//  Temperature
+//
+//  Created by 姓二名哈字富贵儿 on 2023/8/24.
+//
+
+#import "RDSDeviceTypeCell.h"
+
+@interface RDSDeviceTypeCell ()
+
+@property (nonatomic, strong) UIImageView *deviceTypeView;
+@property (nonatomic, strong) NSDictionary *codeToNameDic;
+
+@end
+
+@implementation RDSDeviceTypeCell
+
+- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
+    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
+    if (self) {
+        self.contentView.backgroundColor = [UIColor colorWithHexString:@"#FBFBFB"];
+        self.deviceTypeView = [[UIImageView alloc] init];
+        [self.contentView addSubview:self.deviceTypeView];
+        [self.deviceTypeView mas_makeConstraints:^(MASConstraintMaker *make) {
+            make.edges.mas_equalTo(UIEdgeInsetsMake(0, 20, 0, 20));
+            make.height.equalTo(self.deviceTypeView.mas_width).multipliedBy(0.328);
+        }];
+    }
+    return self;
+}
+
+- (void)setDeviceTypeModel:(RDSDeviceTypeModel *)deviceTypeModel {
+    _deviceTypeModel = deviceTypeModel;
+    self.deviceTypeView.image = [UIImage imageNamed:self.codeToNameDic[deviceTypeModel.code]];
+}
+
+- (NSDictionary *)codeToNameDic {
+    if (!_codeToNameDic) {
+        _codeToNameDic = @{@"YXK-Z/86-FG-A": @"type_fluorine_main_controller",
+                           @"YXK-F/86-FG-A": @"type_fluorine_sub_controller",
+                           @"YXK-Z/86-FC-B": @"type_water_main_controller",
+                           @"YXK-F/86-FC-B": @"type_water_sub_controller",
+                           @"YXK-P/DN-JF-8": @"type_intelligent_water_collector"};
+    }
+    return _codeToNameDic;
+}
+
+@end