Przeglądaj źródła

1.接收初步UI

huangxiaodong 1 rok temu
rodzic
commit
de001dec79

+ 56 - 0
创维盒子/双子星云手机.xcodeproj/project.pbxproj

@@ -345,6 +345,22 @@
 		6B6317A32BFD9DB500FF4FB4 /* ZFCustomControlView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B6317A02BFD9DB500FF4FB4 /* ZFCustomControlView.h */; };
 		6B6317A42BFD9DB500FF4FB4 /* ZFCustomControlView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6317A12BFD9DB500FF4FB4 /* ZFCustomControlView.m */; };
 		6B6317A52BFD9DB500FF4FB4 /* ZFCustomControlView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6317A12BFD9DB500FF4FB4 /* ZFCustomControlView.m */; };
+		6B6ABEDA2BFF3AA400480BAC /* receiveView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B6ABED82BFF3AA400480BAC /* receiveView.h */; };
+		6B6ABEDB2BFF3AA400480BAC /* receiveView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6ABED92BFF3AA400480BAC /* receiveView.m */; };
+		6B6ABEDC2BFF3AA400480BAC /* receiveView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B6ABED82BFF3AA400480BAC /* receiveView.h */; };
+		6B6ABEDD2BFF3AA400480BAC /* receiveView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6ABED92BFF3AA400480BAC /* receiveView.m */; };
+		6B6ABEE02BFF3DD000480BAC /* receiveHeadView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B6ABEDE2BFF3DD000480BAC /* receiveHeadView.h */; };
+		6B6ABEE12BFF3DD000480BAC /* receiveHeadView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6ABEDF2BFF3DD000480BAC /* receiveHeadView.m */; };
+		6B6ABEE22BFF3DD000480BAC /* receiveHeadView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B6ABEDE2BFF3DD000480BAC /* receiveHeadView.h */; };
+		6B6ABEE32BFF3DD000480BAC /* receiveHeadView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6ABEDF2BFF3DD000480BAC /* receiveHeadView.m */; };
+		6B6ABEE62BFF49C800480BAC /* receiveDownloadRecordTableView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B6ABEE42BFF49C800480BAC /* receiveDownloadRecordTableView.h */; };
+		6B6ABEE72BFF49C800480BAC /* receiveDownloadRecordTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6ABEE52BFF49C800480BAC /* receiveDownloadRecordTableView.m */; };
+		6B6ABEE82BFF49C800480BAC /* receiveDownloadRecordTableView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B6ABEE42BFF49C800480BAC /* receiveDownloadRecordTableView.h */; };
+		6B6ABEE92BFF49C800480BAC /* receiveDownloadRecordTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6ABEE52BFF49C800480BAC /* receiveDownloadRecordTableView.m */; };
+		6B6ABEEC2BFF5B2F00480BAC /* receiveSaveRecordTableView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B6ABEEA2BFF5B2F00480BAC /* receiveSaveRecordTableView.h */; };
+		6B6ABEED2BFF5B2F00480BAC /* receiveSaveRecordTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6ABEEB2BFF5B2F00480BAC /* receiveSaveRecordTableView.m */; };
+		6B6ABEEE2BFF5B2F00480BAC /* receiveSaveRecordTableView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B6ABEEA2BFF5B2F00480BAC /* receiveSaveRecordTableView.h */; };
+		6B6ABEEF2BFF5B2F00480BAC /* receiveSaveRecordTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B6ABEEB2BFF5B2F00480BAC /* receiveSaveRecordTableView.m */; };
 		6B72724B2B0AF59200C03F87 /* uploadFileRecordTableViewHeadView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B7272492B0AF59200C03F87 /* uploadFileRecordTableViewHeadView.h */; };
 		6B72724C2B0AF59200C03F87 /* uploadFileRecordTableViewHeadView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B72724A2B0AF59200C03F87 /* uploadFileRecordTableViewHeadView.m */; };
 		6B72724F2B0B58E500C03F87 /* uploadFileRecordEditBottomView.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B72724D2B0B58E500C03F87 /* uploadFileRecordEditBottomView.h */; };
@@ -1276,6 +1292,14 @@
 		6B63179B2BFD8CA000FF4FB4 /* videoPlayByAVPlayerViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = videoPlayByAVPlayerViewController.m; sourceTree = "<group>"; };
 		6B6317A02BFD9DB500FF4FB4 /* ZFCustomControlView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZFCustomControlView.h; sourceTree = "<group>"; };
 		6B6317A12BFD9DB500FF4FB4 /* ZFCustomControlView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ZFCustomControlView.m; sourceTree = "<group>"; };
+		6B6ABED82BFF3AA400480BAC /* receiveView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = receiveView.h; sourceTree = "<group>"; };
+		6B6ABED92BFF3AA400480BAC /* receiveView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = receiveView.m; sourceTree = "<group>"; };
+		6B6ABEDE2BFF3DD000480BAC /* receiveHeadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = receiveHeadView.h; sourceTree = "<group>"; };
+		6B6ABEDF2BFF3DD000480BAC /* receiveHeadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = receiveHeadView.m; sourceTree = "<group>"; };
+		6B6ABEE42BFF49C800480BAC /* receiveDownloadRecordTableView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = receiveDownloadRecordTableView.h; sourceTree = "<group>"; };
+		6B6ABEE52BFF49C800480BAC /* receiveDownloadRecordTableView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = receiveDownloadRecordTableView.m; sourceTree = "<group>"; };
+		6B6ABEEA2BFF5B2F00480BAC /* receiveSaveRecordTableView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = receiveSaveRecordTableView.h; sourceTree = "<group>"; };
+		6B6ABEEB2BFF5B2F00480BAC /* receiveSaveRecordTableView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = receiveSaveRecordTableView.m; sourceTree = "<group>"; };
 		6B7272492B0AF59200C03F87 /* uploadFileRecordTableViewHeadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = uploadFileRecordTableViewHeadView.h; sourceTree = "<group>"; };
 		6B72724A2B0AF59200C03F87 /* uploadFileRecordTableViewHeadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = uploadFileRecordTableViewHeadView.m; sourceTree = "<group>"; };
 		6B72724D2B0B58E500C03F87 /* uploadFileRecordEditBottomView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = uploadFileRecordEditBottomView.h; sourceTree = "<group>"; };
@@ -2022,6 +2046,7 @@
 		6B05815D2AFCD0A900D37290 /* uploadFile */ = {
 			isa = PBXGroup;
 			children = (
+				6B6ABED72BFF3A6600480BAC /* receiveView */,
 				6B5D401C2B4AA70C000965CF /* downLoadFile */,
 				6B5D40172B4A70AB000965CF /* uploadFileView */,
 				6B5B60622B3D5F72009A2AE2 /* fileTransfeSet */,
@@ -2295,6 +2320,21 @@
 			path = view;
 			sourceTree = "<group>";
 		};
+		6B6ABED72BFF3A6600480BAC /* receiveView */ = {
+			isa = PBXGroup;
+			children = (
+				6B6ABED82BFF3AA400480BAC /* receiveView.h */,
+				6B6ABED92BFF3AA400480BAC /* receiveView.m */,
+				6B6ABEDE2BFF3DD000480BAC /* receiveHeadView.h */,
+				6B6ABEDF2BFF3DD000480BAC /* receiveHeadView.m */,
+				6B6ABEE42BFF49C800480BAC /* receiveDownloadRecordTableView.h */,
+				6B6ABEE52BFF49C800480BAC /* receiveDownloadRecordTableView.m */,
+				6B6ABEEA2BFF5B2F00480BAC /* receiveSaveRecordTableView.h */,
+				6B6ABEEB2BFF5B2F00480BAC /* receiveSaveRecordTableView.m */,
+			);
+			path = receiveView;
+			sourceTree = "<group>";
+		};
 		6B7EA7952BF5B46A002D5CC2 /* model */ = {
 			isa = PBXGroup;
 			children = (
@@ -2802,6 +2842,7 @@
 				6B1FBD362B455DD600926382 /* PlayerViewController+backupsFile.h in Headers */,
 				18FCE5332AD12FE00020F623 /* ConnectTestViewController.h in Headers */,
 				181E84F22A8F0A9B00292B96 /* HelpDownScrollView.h in Headers */,
+				6B6ABEE62BFF49C800480BAC /* receiveDownloadRecordTableView.h in Headers */,
 				6B2170882B1444CC00656670 /* allVersionView.h in Headers */,
 				6B0D004C2BFE104B00F02719 /* queryOneShareModel.h in Headers */,
 				6B45C50C2B5FA80E007E6911 /* diskListBgView.h in Headers */,
@@ -2834,6 +2875,7 @@
 				6B7EA7B02BF73DEB002D5CC2 /* addShareModel.h in Headers */,
 				6B21708C2B14BDAA00656670 /* couldphoneSysInfoModel.h in Headers */,
 				6B72724F2B0B58E500C03F87 /* uploadFileRecordEditBottomView.h in Headers */,
+				6B6ABEE02BFF3DD000480BAC /* receiveHeadView.h in Headers */,
 				184C8ADD2A949DBD00F26650 /* HWVersionModel.h in Headers */,
 				6B05826F2AFF692700D37290 /* photoPreViewBottomView.h in Headers */,
 				6B7B65582AD9227700BE8CB3 /* PlayerViewController+otherDelegate.h in Headers */,
@@ -2866,6 +2908,7 @@
 				6BF52C992AD5546500A617DB /* Reachability.h in Headers */,
 				6B5D40432B4CF04C000965CF /* PlayerViewController+downloadFile.h in Headers */,
 				6B5D40152B47F27A000965CF /* couldPhoneCommonModel.h in Headers */,
+				6B6ABEDA2BFF3AA400480BAC /* receiveView.h in Headers */,
 				18BB18412AC417CB00A36F63 /* RYShearDeviceUDPManager.h in Headers */,
 				6B9354952BF33F2700AA8D31 /* editShareView.h in Headers */,
 				184C8AD52A949D5900F26650 /* AboutViewController.h in Headers */,
@@ -2892,6 +2935,7 @@
 				6B7272532B0CABC600C03F87 /* cachesFileManager.h in Headers */,
 				6B1FBD3E2B46875300926382 /* backupsFileRecordCell.h in Headers */,
 				186820192AB94877005702A6 /* GuideLastView.h in Headers */,
+				6B6ABEEC2BFF5B2F00480BAC /* receiveSaveRecordTableView.h in Headers */,
 				6B0582632AFF4B7D00D37290 /* PhotoPreviewViewController.h in Headers */,
 				6B34DC6D2BF2070D002DD1EF /* titleLabelReusableView.h in Headers */,
 				6B304E982BEF6058004F5580 /* customShareManageTool.h in Headers */,
@@ -2965,6 +3009,7 @@
 				6BD506BA2B9576A4006E7CB0 /* PlayerViewController+backupsFile.h in Headers */,
 				6BD506BB2B9576A4006E7CB0 /* ConnectTestViewController.h in Headers */,
 				6BD506BC2B9576A4006E7CB0 /* HelpDownScrollView.h in Headers */,
+				6B6ABEE82BFF49C800480BAC /* receiveDownloadRecordTableView.h in Headers */,
 				6BD506BD2B9576A4006E7CB0 /* allVersionView.h in Headers */,
 				6B0D004D2BFE104B00F02719 /* queryOneShareModel.h in Headers */,
 				6BD506BE2B9576A4006E7CB0 /* diskListBgView.h in Headers */,
@@ -2997,6 +3042,7 @@
 				6B7EA7B22BF73DEB002D5CC2 /* addShareModel.h in Headers */,
 				6BD506D42B9576A4006E7CB0 /* couldphoneSysInfoModel.h in Headers */,
 				6BD506D52B9576A4006E7CB0 /* uploadFileRecordEditBottomView.h in Headers */,
+				6B6ABEE22BFF3DD000480BAC /* receiveHeadView.h in Headers */,
 				6BD506D62B9576A4006E7CB0 /* HWVersionModel.h in Headers */,
 				6BD506D72B9576A4006E7CB0 /* photoPreViewBottomView.h in Headers */,
 				6BD506D82B9576A4006E7CB0 /* PlayerViewController+otherDelegate.h in Headers */,
@@ -3029,6 +3075,7 @@
 				6BD506EE2B9576A4006E7CB0 /* Reachability.h in Headers */,
 				6BD506EF2B9576A4006E7CB0 /* PlayerViewController+downloadFile.h in Headers */,
 				6BD506F02B9576A4006E7CB0 /* couldPhoneCommonModel.h in Headers */,
+				6B6ABEDC2BFF3AA400480BAC /* receiveView.h in Headers */,
 				6BD506F12B9576A4006E7CB0 /* RYShearDeviceUDPManager.h in Headers */,
 				6B9354962BF33F2700AA8D31 /* editShareView.h in Headers */,
 				6BD506F22B9576A4006E7CB0 /* AboutViewController.h in Headers */,
@@ -3055,6 +3102,7 @@
 				6BD506FF2B9576A4006E7CB0 /* cachesFileManager.h in Headers */,
 				6BD507002B9576A4006E7CB0 /* backupsFileRecordCell.h in Headers */,
 				6BD507012B9576A4006E7CB0 /* GuideLastView.h in Headers */,
+				6B6ABEEE2BFF5B2F00480BAC /* receiveSaveRecordTableView.h in Headers */,
 				6BD507022B9576A4006E7CB0 /* PhotoPreviewViewController.h in Headers */,
 				6B34DC6F2BF2070D002DD1EF /* titleLabelReusableView.h in Headers */,
 				6B304E992BEF6058004F5580 /* customShareManageTool.h in Headers */,
@@ -3479,6 +3527,7 @@
 				6B9354AF2BF3879200AA8D31 /* shareRecordTableViewCell.m in Sources */,
 				6BD507252B9576A4006E7CB0 /* inputPWDViewController.m in Sources */,
 				6BD507262B9576A4006E7CB0 /* UIColor+Colors.m in Sources */,
+				6B6ABEE92BFF49C800480BAC /* receiveDownloadRecordTableView.m in Sources */,
 				6BD507272B9576A4006E7CB0 /* AJPhotoListView.m in Sources */,
 				6BD507282B9576A4006E7CB0 /* PwdInPutView.m in Sources */,
 				6B3AD68C2BF4AE630096D6B7 /* backupsOptionViewController.m in Sources */,
@@ -3515,6 +3564,7 @@
 				6B5BE5BB2BFCCA2000A1B9B3 /* TBVideoRequestTask.m in Sources */,
 				6B7EA7A12BF5E0ED002D5CC2 /* NASMsgModel.m in Sources */,
 				6BD507412B9576A4006E7CB0 /* AudioSessionObject.m in Sources */,
+				6B6ABEDD2BFF3AA400480BAC /* receiveView.m in Sources */,
 				6B5BE5B12BFCCA2000A1B9B3 /* TBloaderURLConnection.m in Sources */,
 				6BD507422B9576A4006E7CB0 /* ChangeLogoViewController.m in Sources */,
 				6BD507432B9576A4006E7CB0 /* uploadFileRecordheadView.m in Sources */,
@@ -3552,6 +3602,7 @@
 				6BD5075E2B9576A4006E7CB0 /* uploadFileManager.m in Sources */,
 				6BD5075F2B9576A4006E7CB0 /* QRCodeScanForChangeDeviceViewController.m in Sources */,
 				6BD507602B9576A4006E7CB0 /* AJPhotoListCell.m in Sources */,
+				6B6ABEEF2BFF5B2F00480BAC /* receiveSaveRecordTableView.m in Sources */,
 				6BD507612B9576A4006E7CB0 /* FMDatabasePool.m in Sources */,
 				6BD507622B9576A4006E7CB0 /* iToast.m in Sources */,
 				6BD507632B9576A4006E7CB0 /* HWPageListCell.m in Sources */,
@@ -3671,6 +3722,7 @@
 				6B9354A32BF37D2D00AA8D31 /* previewAudioOrDocumentViewController.m in Sources */,
 				6BD507C32B9576A4006E7CB0 /* HidenMaskSetViewController.m in Sources */,
 				6BD507C42B9576A4006E7CB0 /* filePathCreatTableViewCell.m in Sources */,
+				6B6ABEE32BFF3DD000480BAC /* receiveHeadView.m in Sources */,
 				6BD507C52B9576A4006E7CB0 /* commandSendCheckModel.m in Sources */,
 				6BD507C62B9576A4006E7CB0 /* GuideView.m in Sources */,
 				6BD507C72B9576A4006E7CB0 /* ShortcutManager.m in Sources */,
@@ -3727,6 +3779,7 @@
 				6B9354AC2BF3879200AA8D31 /* shareRecordTableViewCell.m in Sources */,
 				6BF52CA22AD7C2F600A617DB /* inputPWDViewController.m in Sources */,
 				A003F6B627D841EE00715CBF /* UIColor+Colors.m in Sources */,
+				6B6ABEE72BFF49C800480BAC /* receiveDownloadRecordTableView.m in Sources */,
 				6B05819E2AFCF4E800D37290 /* AJPhotoListView.m in Sources */,
 				18E557292A3C60ED005CC84B /* PwdInPutView.m in Sources */,
 				6B3AD68B2BF4AE630096D6B7 /* backupsOptionViewController.m in Sources */,
@@ -3763,6 +3816,7 @@
 				6B5BE5BA2BFCCA2000A1B9B3 /* TBVideoRequestTask.m in Sources */,
 				6B7EA79F2BF5E0ED002D5CC2 /* NASMsgModel.m in Sources */,
 				6BBB35DE2AE76AD800E4A59B /* AudioSessionObject.m in Sources */,
+				6B6ABEDB2BFF3AA400480BAC /* receiveView.m in Sources */,
 				6B5BE5B02BFCCA2000A1B9B3 /* TBloaderURLConnection.m in Sources */,
 				181E84FC2A8F57A500292B96 /* ChangeLogoViewController.m in Sources */,
 				6B8FF6BA2B04E19600800981 /* uploadFileRecordheadView.m in Sources */,
@@ -3800,6 +3854,7 @@
 				6B0582862B0457C400D37290 /* uploadFileManager.m in Sources */,
 				18F9CB082ABD7835003FF71A /* QRCodeScanForChangeDeviceViewController.m in Sources */,
 				6B0581A32AFCF50300D37290 /* AJPhotoListCell.m in Sources */,
+				6B6ABEED2BFF5B2F00480BAC /* receiveSaveRecordTableView.m in Sources */,
 				A08A950327E9A4E400C544BB /* FMDatabasePool.m in Sources */,
 				A003F6D327D8425C00715CBF /* iToast.m in Sources */,
 				A08A94E027E9837600C544BB /* HWPageListCell.m in Sources */,
@@ -3919,6 +3974,7 @@
 				6B9354A02BF37D2D00AA8D31 /* previewAudioOrDocumentViewController.m in Sources */,
 				184C8ACD2A94557200F26650 /* HidenMaskSetViewController.m in Sources */,
 				6B5B607B2B3E71B6009A2AE2 /* filePathCreatTableViewCell.m in Sources */,
+				6B6ABEE12BFF3DD000480BAC /* receiveHeadView.m in Sources */,
 				6B1CC2CF2B6B6D6B00AD4217 /* commandSendCheckModel.m in Sources */,
 				18963B472AB84398006E7C50 /* GuideView.m in Sources */,
 				18FCE5452AD136FF0020F623 /* ShortcutManager.m in Sources */,

+ 3 - 2
创维盒子/双子星云手机/Class/Set/uploadFile/photoView/uploadFileRecordheadView.m

@@ -28,9 +28,10 @@
     NSString *leftStr =  NSLocalizedString(@"my_set_no_File_upload",nil);
     NSString *midStr =  NSLocalizedString(@"my_set_no_File_download",nil);
     NSString *rightStr =  NSLocalizedString(@"my_set_no_File_backups",nil);
-    NSArray *titleArr =  @[leftStr,midStr,rightStr];
+    NSString *fourStr =  NSLocalizedString(@"my_set_no_File_receive_title",nil);
+    NSArray *titleArr =  @[leftStr,midStr,rightStr,fourStr];
     
-    _butWidth = (SCREEN_W - 30)/3.0;
+    _butWidth = (SCREEN_W - 30)/titleArr.count;
     
     NSString *languageCode = [NSLocale preferredLanguages][0];
   

+ 24 - 0
创维盒子/双子星云手机/Class/Set/uploadFile/receiveView/receiveDownloadRecordTableView.h

@@ -6,11 +6,35 @@
 //
 
 #import <UIKit/UIKit.h>
+#import "uploadFileRecordTableViewHeadView.h"
+#import "couldPhoneFileListModel.h"
 
 NS_ASSUME_NONNULL_BEGIN
 
 @interface receiveDownloadRecordTableView : UITableView
+@property (nonatomic, strong) NSMutableArray *outSideDataArr;
+@property (nonatomic, strong)NSMutableArray *downloadingArr;
+@property (nonatomic, strong)NSMutableArray *downloadfailArr;
+@property (nonatomic, strong)NSMutableArray *downloadDoneArr;
 
+@property (nonatomic,strong) uploadFileRecordTableViewHeadView *downloadingHeadView;
+@property (nonatomic,strong) uploadFileRecordTableViewHeadView *failHeadView;
+@property (nonatomic,strong) uploadFileRecordTableViewHeadView *doneHeadView;
+
+@property (nonatomic,assign) BOOL isEditType;
+@property (nonatomic,assign) BOOL isSelectAllType;
+@property (nonatomic,strong) NSMutableArray *selectModelArr;
+
+@property (nonatomic,copy) void (^didLongPressClick)(void);
+@property (nonatomic,copy) void (^didClickReUploadBlock)(couldPhoneFileModel* model);
+
+@property (nonatomic,copy) void (^didClickSectionHeadViewRightButton)(NSInteger section);
+@property (nonatomic,copy) void (^didNeedRefreshGetDatabaseFun)(void);
+
+-(void)reloadDataFun;
+- (void)RefreshAllDataFun;
+#pragma mark 单个点击选中后删除
+- (void)deleteModelOneByOneFun;
 @end
 
 NS_ASSUME_NONNULL_END

+ 483 - 6
创维盒子/双子星云手机/Class/Set/uploadFile/receiveView/receiveDownloadRecordTableView.m

@@ -7,14 +7,491 @@
 
 #import "receiveDownloadRecordTableView.h"
 
+#import "downloadFileRecordCell.h"
+#import "UIScrollView+EmptyDataSet.h"
+#import "uploadFileRecordTableViewHeadView.h"
+
+@interface receiveDownloadRecordTableView()<UITableViewDataSource,UITableViewDelegate,DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>
+{
+   
+}
+
+
+@property (nonatomic, strong) NSMutableArray *curDataArr;
+@end
+
 @implementation receiveDownloadRecordTableView
 
-/*
-// Only override drawRect: if you perform custom drawing.
-// An empty implementation adversely affects performance during animation.
-- (void)drawRect:(CGRect)rect {
-    // Drawing code
+- (id)initWithFrame:(CGRect)frame {
+    self = [super initWithFrame:frame];
+    if (self) {
+        [self initCommon];
+        [self initTableHeaderInSectionFun];
+        _selectModelArr = [NSMutableArray new];
+        _curDataArr = [NSMutableArray new];
+    }
+    return self;
+}
+
+- (void)initCommon {
+    self.delegate = self;
+    self.dataSource = self;
+    self.showsVerticalScrollIndicator = NO;
+    self.showsHorizontalScrollIndicator = NO;
+    [self setSeparatorStyle:(UITableViewCellSeparatorStyleNone)];
+    [self setSeparatorColor:[UIColor clearColor]];
+    [self setBackgroundColor:[UIColor clearColor]];
+    [self setTableFooterView:[UIView new]];
+    [self setBounces:YES];
+    if (@available(iOS 15.0, *)) {
+        self.sectionHeaderTopPadding = 0;
+    }
+    
+    //空数据引入第三方开源处理
+    self.emptyDataSetSource = self;
+    self.emptyDataSetDelegate = self;
+}
+
+- (void)setOutSideDataArr:(NSMutableArray *)outSideDataArr{
+    
+    if(!outSideDataArr || outSideDataArr.count != 3){
+        return;
+    }
+    
+    _outSideDataArr = outSideDataArr;
+    
+    _downloadingArr = outSideDataArr[0];
+    _downloadDoneArr = outSideDataArr[1];
+    _downloadfailArr = outSideDataArr[2];
+    
+    [self RefreshAllDataFun];
+}
+
+- (void)RefreshAllDataFun
+{
+    NSMutableArray *totalArr = [NSMutableArray new];
+    
+    if(_downloadingArr.count>0){
+        [totalArr addObject:_downloadingArr];
+    }
+    
+    if(_downloadfailArr.count>0){
+        [totalArr addObject:_downloadfailArr];
+    }
+    
+    if(_downloadDoneArr.count>0){
+        [totalArr addObject:_downloadDoneArr];
+    }
+    
+    _curDataArr = totalArr;
+    
+    [self reloadDataFun];
+}
+
+#pragma mark - 列表委托
+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
+    return _curDataArr.count;
+}
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
+    
+    if(section < _curDataArr.count){
+        NSArray *curArr = _curDataArr[section];
+        return curArr.count;
+    }
+    
+    return 0;
+    
+}
+
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
+    
+    NSInteger row = indexPath.row;
+    NSInteger section = indexPath.section;
+    static NSString *identifier = @"downloadFileRecordCell";
+    
+    downloadFileRecordCell * cell =  [tableView dequeueReusableCellWithIdentifier:identifier];
+    cell.selectionStyle = UITableViewCellSelectionStyleNone;
+    if (!cell){
+        cell = [[downloadFileRecordCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:identifier];
+        [cell setSelectionStyle:UITableViewCellSelectionStyleNone];
+        [cell setBackgroundColor:[UIColor clearColor]];
+        [cell setAccessoryType:(UITableViewCellAccessoryNone)];
+    }
+    
+    if(section < _curDataArr.count){
+        NSMutableArray *curArr = _curDataArr[section];
+        
+        if(row < curArr.count){
+            couldPhoneFileModel *model = curArr[row];
+            cell.curCouldPhoneFileModel = model;
+            cell.isEditType = _isEditType;
+
+            if(_isEditType){
+                if([_selectModelArr containsObject:model]){
+                    cell.isSelectType = YES;
+                }
+                else{
+                    cell.isSelectType = NO;
+                }
+            }
+            
+            KWeakSelf
+            cell.didLongPressClick = ^{
+                [weakSelf didLongPressClickFun];
+            };
+
+            cell.didClckSelectBut = ^(BOOL isSelect) {
+                [weakSelf selectModelOneByOne:model BySelect:isSelect];
+            };
+
+            cell.didTapPressClick = ^{
+                if(model.curDownloadStateType == downloadStateUploading){
+                    model.curDownloadStateType = downloadStateSuspend;
+                    [weakSelf handleDownloadingStateTapFunBy:YES with:model];
+                }
+                else if(model.curDownloadStateType == downloadStateSuspend){
+                    model.curDownloadStateType = downloadStateUploading;
+                    [weakSelf handleDownloadingStateTapFunBy:NO with:model];
+                }
+                else if(model.curDownloadStateType == downloadStateFail){
+                    [weakSelf handleUploadFailStateWith:model];
+                }
+            };
+        }
+    }
+    
+    return cell;
+}
+
+- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
+    return 70;
+}
+
+- (UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
+{
+    NSInteger curType = 0;// 0 上传中  1 失败 2 完成
+    if(section == 2){
+        curType = 2;
+    }
+    else if(section == 1){
+        if(_downloadingArr.count == 0){
+            curType = 2;
+        }
+        else if(_downloadfailArr.count == 0){
+            curType = 2;
+        }
+        else{
+            curType = 1;
+        }
+    }
+    else{
+        if(_downloadingArr.count > 0){
+            curType = 0;
+        }
+        else if(_downloadfailArr.count > 0){
+            curType = 1;
+        }
+        else{
+            curType = 2;
+        }
+    }
+    
+    
+    [self RefresHeadUIFun];
+    
+    return [UIView new];
+//    if(curType == 2){
+//        return _doneHeadView;
+//    }
+//    else if(curType == 1){
+//        return _failHeadView;
+//    }
+//    else{
+//        return _downloadingHeadView;
+//    }
+    
+}
+
+- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
+{
+    return 40;
+}
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
+    [tableView deselectRowAtIndexPath:indexPath animated:YES];
+    
+}
+
+#pragma mark 空数据
+- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView {
+    
+    NSString *imageName = @"uploadFile_noData";
+    
+    if(self.tag == 101){
+        imageName = @"uploadFile_noData";
+    }
+    else if(self.tag == 102){
+        imageName = @"uploadFile_noData";
+    }
+    
+    return [UIImage imageNamed:imageName];
+}
+
+- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView {
+    NSString *text = NSLocalizedString(@"File_upload_Record_no_data",nil);
+    
+    if(self.tag == 101){
+        text = NSLocalizedString(@"File_download_Record_no_data",nil);
+    }
+    else if(self.tag == 102){
+        text = NSLocalizedString(@"File_backups_Record_no_data",nil);
+    }
+    
+    NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:16.0f],
+                                 NSForegroundColorAttributeName: HW999999Color};
+    
+    return [[NSAttributedString alloc] initWithString:text attributes:attributes];
+}
+
+//调整图片位置
+- (CGFloat)verticalOffsetForEmptyDataSet:(UIScrollView *)scrollView {
+    return -150;
 }
-*/
 
+-(void)reloadDataFun{
+    mainBlock(^{
+        [self RefresHeadUIFun];
+        [self reloadData];
+    });
+}
+
+#pragma mark 初始化段头
+- (void)initTableHeaderInSectionFun
+{
+    KWeakSelf
+//    if(!_downloadingHeadView){
+//        _downloadingHeadView = [[uploadFileRecordTableViewHeadView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, 40)];
+//        //headView.backgroundColor = [UIColor greenColor];
+//        
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_downloading",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_all_suspend",nil);
+//        NSString *rightSelectStr =  NSLocalizedString(@"File_upload_Record_all_open",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadingArr.count];
+//
+//        _downloadingHeadView.titleLabel.text = titleStr;
+//        [_downloadingHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//        [_downloadingHeadView.rightButton setTitle:rightSelectStr forState:UIControlStateSelected];
+//        
+//        _downloadingHeadView.didClickButFun = ^{
+//            [weakSelf didClickRightButtonFun:0];
+//        };
+//    }
+//    
+//
+//    if(!_failHeadView){
+//        _failHeadView = [[uploadFileRecordTableViewHeadView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, 40)];
+//        //headView.backgroundColor = [UIColor greenColor];
+//        
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_download_fail",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_clear_Record",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadfailArr.count];
+//
+//         _failHeadView.titleLabel.text = titleStr;
+//        [_failHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//         
+//        _failHeadView.didClickButFun = ^{
+//            [weakSelf didClickRightButtonFun:2];
+//        };
+//    }
+//    
+//    if(!_doneHeadView){
+//        _doneHeadView = [[uploadFileRecordTableViewHeadView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, 40)];
+//        //headView.backgroundColor = [UIColor greenColor];
+//        
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_did_download",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_clear_Record",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadDoneArr.count];
+//
+//        _doneHeadView.titleLabel.text = titleStr;
+//        [_doneHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//        
+//        _doneHeadView.didClickButFun = ^{
+//            [weakSelf didClickRightButtonFun:1];
+//        };
+//    }
+//     
+//    
+}
+
+#pragma mark 点击头部右边按钮
+- (void)didClickRightButtonFun:(NSInteger)section
+{
+    if(_didClickSectionHeadViewRightButton){
+        _didClickSectionHeadViewRightButton(section);
+    }
+}
+
+#pragma mark 刷新头部数据
+-(void)RefresHeadUIFun
+{
+
+//    if(_downloadingHeadView){
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_downloading",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_all_suspend",nil);
+//        NSString *rightSelectStr =  NSLocalizedString(@"File_upload_Record_all_open",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadingArr.count];
+//
+//        _downloadingHeadView.titleLabel.text = titleStr;
+//        [_downloadingHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//        [_downloadingHeadView.rightButton setTitle:rightSelectStr forState:UIControlStateSelected];
+//        
+//        if(_downloadingArr.count == 0){
+//            _downloadingHeadView.hidden = YES;
+//        }
+//        else{
+//            _downloadingHeadView.hidden = NO;
+//        }
+//    }
+//    
+//        
+//     if(_failHeadView){
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_download_fail",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_clear_Record",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadfailArr.count];
+//
+//         _failHeadView.titleLabel.text = titleStr;
+//        [_failHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//         
+//         if(_downloadfailArr.count == 0){
+//             _failHeadView.hidden = YES;
+//         }
+//         else{
+//             _failHeadView.hidden = NO;
+//         }
+//    }
+//    
+//    if(_doneHeadView){
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_did_download",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_clear_Record",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadDoneArr.count];
+//
+//        _doneHeadView.titleLabel.text = titleStr;
+//        [_doneHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//        
+//        if(_downloadDoneArr.count == 0){
+//            _doneHeadView.hidden = YES;
+//        }
+//        else{
+//            _doneHeadView.hidden = NO;
+//        }
+//    }
+}
+
+#pragma mark  点击全选
+- (void)setIsSelectAllType:(BOOL)isSelectAllType
+{
+    //_selectModelArr = [NSMutableArray arrayWithArray:_curDataArr];
+    
+    _selectModelArr = [NSMutableArray new];
+    
+    [_selectModelArr addObjectsFromArray:_downloadingArr];
+    [_selectModelArr addObjectsFromArray:_downloadfailArr];
+    [_selectModelArr addObjectsFromArray:_downloadDoneArr];
+    
+    [self reloadDataFun];
+}
+
+-(void)setIsEditType:(BOOL)isEditType
+{
+    _isEditType = isEditType;
+    
+    if(_isEditType){
+        //_bgScrollV.scrollEnabled = NO;
+    }
+    else{
+        //_bgScrollV.scrollEnabled = YES;
+        [_selectModelArr removeAllObjects];
+        
+    }
+    
+    [self reloadDataFun];
+}
+
+#pragma mark cell长按时间
+- (void)didLongPressClickFun{
+        self.isEditType = YES;
+        if(self->_didLongPressClick){
+            self->_didLongPressClick();
+        }
+}
+
+#pragma mark 单个点击选中 取消
+- (void)selectModelOneByOne:(couldPhoneFileModel*)model BySelect:(BOOL)isSelcet
+{
+    if(isSelcet){
+        [_selectModelArr addObject:model];
+    }
+    else{
+        [_selectModelArr removeObject:model];
+    }
+}
+
+#pragma mark 单个点击选中后删除
+- (void)deleteModelOneByOneFun{
+    if(!_selectModelArr || _selectModelArr.count==0){
+        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+            [SVProgressHUD dismiss];
+        });
+        return;
+    }
+    
+    //[[downloadManager shareInstance] deleteDownloadFileRecordBy:_selectModelArr withDelCache:YES];
+    
+    [_selectModelArr removeAllObjects];
+    //重新拿数据
+    [self refreshGetDatabaseFun];
+}
+
+#pragma mark 删除后重新拿数据
+- (void)refreshGetDatabaseFun
+{
+    if(_didNeedRefreshGetDatabaseFun){
+        _didNeedRefreshGetDatabaseFun();
+    }
+}
+
+#pragma mark 处理上传中的 状态点击事件
+- (void)handleDownloadingStateTapFunBy:(BOOL)isSuspendType with:(couldPhoneFileModel*)model
+{
+//    if (isSuspendType) {
+//        [[downloadManager shareInstance] suspendDownloadFileFun:NO withModel:model];
+//    }
+//    else{
+//        NSMutableArray*arr = [NSMutableArray new];
+//        [arr addObject:model];
+//        [[downloadManager shareInstance] reDownloadFileFunBy:arr withAll:NO];
+//    }
+//    
+//    [self reloadDataFun];
+}
+
+#pragma mark 处理上传中的 状态点击事件
+- (void)handleUploadFailStateWith:(couldPhoneFileModel*)model{
+    
+//    [_downloadfailArr removeObject:model];
+//    [_downloadingArr addObject:model];
+//    
+//    [self RefreshAllDataFun];
+//
+//    if(_didClickReUploadBlock){
+//        _didClickReUploadBlock(model);
+//    }
+//
+//    NSMutableArray*arr = [NSMutableArray new];
+//    model.curDownloadStateType = downloadStateWait;
+//    [arr addObject:model];
+//    [[downloadManager shareInstance] reDownloadFileFunBy:arr withAll:NO];
+    
+}
 @end
+

+ 1 - 1
创维盒子/双子星云手机/Class/Set/uploadFile/receiveView/receiveHeadView.h

@@ -10,7 +10,7 @@
 NS_ASSUME_NONNULL_BEGIN
 
 @interface receiveHeadView : UIView
-
+@property (nonatomic,copy) void (^didClickbuttonFun)(NSInteger tag);
 @end
 
 NS_ASSUME_NONNULL_END

+ 124 - 6
创维盒子/双子星云手机/Class/Set/uploadFile/receiveView/receiveHeadView.m

@@ -7,14 +7,132 @@
 
 #import "receiveHeadView.h"
 
+
+@interface receiveHeadView ()
+{
+    
+}
+
+@property(nonatomic,strong) UIButton * downLoadButton;
+@property(nonatomic,strong) UIButton * saveButton;
+@property(nonatomic,strong) UIView * selectBgView;
+
+@end
+
 @implementation receiveHeadView
 
-/*
-// Only override drawRect: if you perform custom drawing.
-// An empty implementation adversely affects performance during animation.
-- (void)drawRect:(CGRect)rect {
-    // Drawing code
+- (id)initWithFrame:(CGRect)frame{
+    self = [super initWithFrame:frame];
+    [self setBackgroundColor:[UIColor whiteColor]];
+    [self drawAnyView];
+    
+    return self;
+}
+
+- (void)drawAnyView{
+    CGFloat curButtonW = SCREEN_W/2.0;
+    CGFloat curButtonH = 40.0;
+    
+    
+    _downLoadButton = [[UIButton alloc] init];
+    _downLoadButton.tag = 1;
+    [_downLoadButton setTitle:NSLocalizedString(@"my_set_no_File_download",nil) forState:UIControlStateNormal];
+    [_downLoadButton setTitleColor:[UIColor hwColor:@"#666666" alpha:1.0] forState:UIControlStateNormal];
+    [_downLoadButton setTitleColor:[UIColor hwColor:@"#01B7EA" alpha:1.0] forState:UIControlStateSelected];
+    _downLoadButton.titleLabel.font = [UIFont boldSystemFontOfSize:14];
+    [_downLoadButton addTarget:self action:@selector(didClickButFun:) forControlEvents:UIControlEventTouchUpInside];
+    [self addSubview:_downLoadButton];
+    
+    [_downLoadButton mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.left.mas_equalTo(0);
+        make.width.mas_equalTo(curButtonW);
+        make.top.mas_equalTo(0);
+        make.height.mas_equalTo(curButtonH);
+    }];
+    
+    _saveButton = [[UIButton alloc] init];
+    _saveButton.tag = 2;
+    [_saveButton setTitle:NSLocalizedString(@"receive_save_title",nil) forState:UIControlStateNormal];
+    [_saveButton setTitleColor:[UIColor hwColor:@"#666666" alpha:1.0] forState:UIControlStateNormal];
+    [_saveButton setTitleColor:[UIColor hwColor:@"#01B7EA" alpha:1.0] forState:UIControlStateSelected];
+    _saveButton.titleLabel.font = [UIFont boldSystemFontOfSize:14];
+    [_saveButton addTarget:self action:@selector(didClickButFun:) forControlEvents:UIControlEventTouchUpInside];
+    [self addSubview:_saveButton];
+    
+    [_saveButton mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.left.mas_equalTo(curButtonW);
+        make.width.mas_equalTo(curButtonW);
+        make.top.mas_equalTo(0);
+        make.height.mas_equalTo(curButtonH);
+    }];
+    
+    UIView *lineView = [[UIView alloc] init];
+    lineView.backgroundColor = [UIColor hwColor:@"#F9F9F9"];
+    [self addSubview:lineView];
+    
+    [lineView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.left.mas_equalTo(0);
+        make.right.mas_equalTo(0);
+        make.height.mas_equalTo(1);
+        make.bottom.mas_equalTo(0);
+    }];
+    
+    _downLoadButton.selected = YES;
+    _selectBgView = [[UIView alloc] init];
+    
+    CAGradientLayer *gradientLayer = [CAGradientLayer layer];
+    gradientLayer.frame = CGRectMake(0, 0, 60, 3);
+    gradientLayer.colors = @[(__bridge NSString *)[UIColor hwColor:@"#0CDEFD" alpha:1.0].CGColor, (__bridge NSString *)[UIColor hwColor:@"#058DFB" alpha:1.0].CGColor];
+    gradientLayer.locations = @[@(0), @(1.0f)];
+    [_selectBgView.layer addSublayer:gradientLayer];
+    
+    //_selectBgView.backgroundColor = [UIColor whiteColor];
+    _selectBgView.layer.cornerRadius = 1.5;
+    [self insertSubview:_selectBgView atIndex:0];
+    
+    [_selectBgView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.centerX.mas_equalTo(_downLoadButton.mas_centerX);
+        make.width.mas_equalTo(60);
+        make.height.mas_equalTo(3);
+        make.bottom.mas_equalTo(0);
+    }];
+    
+}
+
+- (void)didClickButFun:(UIButton*)but
+{
+    NSInteger tag = but.tag;
+    //but.selected = !but.selected;
+    
+    [self changeSelectViewIndex:tag];
+    
+    if(_didClickbuttonFun){
+        _didClickbuttonFun(tag);
+    }
+}
+
+- (void)changeSelectViewIndex:(NSInteger)index
+{
+    BOOL isSelectLeftType = YES;
+    
+    if(index == 2){
+        isSelectLeftType = NO;
+    }
+    
+    _downLoadButton.selected = isSelectLeftType;
+    _saveButton.selected = !isSelectLeftType;
+    
+    [_selectBgView mas_remakeConstraints:^(MASConstraintMaker *make) {
+        if(isSelectLeftType){
+            make.centerX.mas_equalTo(_downLoadButton.mas_centerX);
+        }
+        else{
+            make.centerX.mas_equalTo(_saveButton.mas_centerX);
+        }
+        make.width.mas_equalTo(60);
+        make.height.mas_equalTo(3);
+        make.bottom.mas_equalTo(0);
+    }];
 }
-*/
 
 @end

+ 24 - 0
创维盒子/双子星云手机/Class/Set/uploadFile/receiveView/receiveSaveRecordTableView.h

@@ -6,11 +6,35 @@
 //
 
 #import <UIKit/UIKit.h>
+#import "uploadFileRecordTableViewHeadView.h"
+#import "couldPhoneFileListModel.h"
 
 NS_ASSUME_NONNULL_BEGIN
 
 @interface receiveSaveRecordTableView : UITableView
+@property (nonatomic, strong) NSMutableArray *outSideDataArr;
+@property (nonatomic, strong)NSMutableArray *downloadingArr;
+@property (nonatomic, strong)NSMutableArray *downloadfailArr;
+@property (nonatomic, strong)NSMutableArray *downloadDoneArr;
 
+@property (nonatomic,strong) uploadFileRecordTableViewHeadView *downloadingHeadView;
+@property (nonatomic,strong) uploadFileRecordTableViewHeadView *failHeadView;
+@property (nonatomic,strong) uploadFileRecordTableViewHeadView *doneHeadView;
+
+@property (nonatomic,assign) BOOL isEditType;
+@property (nonatomic,assign) BOOL isSelectAllType;
+@property (nonatomic,strong) NSMutableArray *selectModelArr;
+
+@property (nonatomic,copy) void (^didLongPressClick)(void);
+@property (nonatomic,copy) void (^didClickReUploadBlock)(couldPhoneFileModel* model);
+
+@property (nonatomic,copy) void (^didClickSectionHeadViewRightButton)(NSInteger section);
+@property (nonatomic,copy) void (^didNeedRefreshGetDatabaseFun)(void);
+
+-(void)reloadDataFun;
+- (void)RefreshAllDataFun;
+#pragma mark 单个点击选中后删除
+- (void)deleteModelOneByOneFun;
 @end
 
 NS_ASSUME_NONNULL_END

+ 482 - 6
创维盒子/双子星云手机/Class/Set/uploadFile/receiveView/receiveSaveRecordTableView.m

@@ -6,15 +6,491 @@
 //
 
 #import "receiveSaveRecordTableView.h"
+#import "downloadFileRecordCell.h"
+#import "UIScrollView+EmptyDataSet.h"
+#import "uploadFileRecordTableViewHeadView.h"
+
+@interface receiveSaveRecordTableView()<UITableViewDataSource,UITableViewDelegate,DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>
+{
+   
+}
+
+
+@property (nonatomic, strong) NSMutableArray *curDataArr;
+@end
 
 @implementation receiveSaveRecordTableView
 
-/*
-// Only override drawRect: if you perform custom drawing.
-// An empty implementation adversely affects performance during animation.
-- (void)drawRect:(CGRect)rect {
-    // Drawing code
+- (id)initWithFrame:(CGRect)frame {
+    self = [super initWithFrame:frame];
+    if (self) {
+        [self initCommon];
+        [self initTableHeaderInSectionFun];
+        _selectModelArr = [NSMutableArray new];
+        _curDataArr = [NSMutableArray new];
+    }
+    return self;
+}
+
+- (void)initCommon {
+    self.delegate = self;
+    self.dataSource = self;
+    self.showsVerticalScrollIndicator = NO;
+    self.showsHorizontalScrollIndicator = NO;
+    [self setSeparatorStyle:(UITableViewCellSeparatorStyleNone)];
+    [self setSeparatorColor:[UIColor clearColor]];
+    [self setBackgroundColor:[UIColor clearColor]];
+    [self setTableFooterView:[UIView new]];
+    [self setBounces:YES];
+    if (@available(iOS 15.0, *)) {
+        self.sectionHeaderTopPadding = 0;
+    }
+    
+    //空数据引入第三方开源处理
+    self.emptyDataSetSource = self;
+    self.emptyDataSetDelegate = self;
+}
+
+- (void)setOutSideDataArr:(NSMutableArray *)outSideDataArr{
+    
+    if(!outSideDataArr || outSideDataArr.count != 3){
+        return;
+    }
+    
+    _outSideDataArr = outSideDataArr;
+    
+    _downloadingArr = outSideDataArr[0];
+    _downloadDoneArr = outSideDataArr[1];
+    _downloadfailArr = outSideDataArr[2];
+    
+    [self RefreshAllDataFun];
+}
+
+- (void)RefreshAllDataFun
+{
+    NSMutableArray *totalArr = [NSMutableArray new];
+    
+    if(_downloadingArr.count>0){
+        [totalArr addObject:_downloadingArr];
+    }
+    
+    if(_downloadfailArr.count>0){
+        [totalArr addObject:_downloadfailArr];
+    }
+    
+    if(_downloadDoneArr.count>0){
+        [totalArr addObject:_downloadDoneArr];
+    }
+    
+    _curDataArr = totalArr;
+    
+    [self reloadDataFun];
+}
+
+#pragma mark - 列表委托
+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
+    return _curDataArr.count;
+}
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
+    
+    if(section < _curDataArr.count){
+        NSArray *curArr = _curDataArr[section];
+        return curArr.count;
+    }
+    
+    return 0;
+    
+}
+
+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
+    
+    NSInteger row = indexPath.row;
+    NSInteger section = indexPath.section;
+    static NSString *identifier = @"downloadFileRecordCell";
+    
+    downloadFileRecordCell * cell =  [tableView dequeueReusableCellWithIdentifier:identifier];
+    cell.selectionStyle = UITableViewCellSelectionStyleNone;
+    if (!cell){
+        cell = [[downloadFileRecordCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:identifier];
+        [cell setSelectionStyle:UITableViewCellSelectionStyleNone];
+        [cell setBackgroundColor:[UIColor clearColor]];
+        [cell setAccessoryType:(UITableViewCellAccessoryNone)];
+    }
+    
+    if(section < _curDataArr.count){
+        NSMutableArray *curArr = _curDataArr[section];
+        
+        if(row < curArr.count){
+            couldPhoneFileModel *model = curArr[row];
+            cell.curCouldPhoneFileModel = model;
+            cell.isEditType = _isEditType;
+
+            if(_isEditType){
+                if([_selectModelArr containsObject:model]){
+                    cell.isSelectType = YES;
+                }
+                else{
+                    cell.isSelectType = NO;
+                }
+            }
+            
+            KWeakSelf
+            cell.didLongPressClick = ^{
+                [weakSelf didLongPressClickFun];
+            };
+
+            cell.didClckSelectBut = ^(BOOL isSelect) {
+                [weakSelf selectModelOneByOne:model BySelect:isSelect];
+            };
+
+            cell.didTapPressClick = ^{
+                if(model.curDownloadStateType == downloadStateUploading){
+                    model.curDownloadStateType = downloadStateSuspend;
+                    [weakSelf handleDownloadingStateTapFunBy:YES with:model];
+                }
+                else if(model.curDownloadStateType == downloadStateSuspend){
+                    model.curDownloadStateType = downloadStateUploading;
+                    [weakSelf handleDownloadingStateTapFunBy:NO with:model];
+                }
+                else if(model.curDownloadStateType == downloadStateFail){
+                    [weakSelf handleUploadFailStateWith:model];
+                }
+            };
+        }
+    }
+    
+    return cell;
+}
+
+- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
+    return 70;
 }
-*/
 
+- (UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
+{
+    NSInteger curType = 0;// 0 上传中  1 失败 2 完成
+    if(section == 2){
+        curType = 2;
+    }
+    else if(section == 1){
+        if(_downloadingArr.count == 0){
+            curType = 2;
+        }
+        else if(_downloadfailArr.count == 0){
+            curType = 2;
+        }
+        else{
+            curType = 1;
+        }
+    }
+    else{
+        if(_downloadingArr.count > 0){
+            curType = 0;
+        }
+        else if(_downloadfailArr.count > 0){
+            curType = 1;
+        }
+        else{
+            curType = 2;
+        }
+    }
+    
+    
+    [self RefresHeadUIFun];
+    
+    return [UIView new];
+//    if(curType == 2){
+//        return _doneHeadView;
+//    }
+//    else if(curType == 1){
+//        return _failHeadView;
+//    }
+//    else{
+//        return _downloadingHeadView;
+//    }
+    
+}
+
+- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
+{
+    return 40;
+}
+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
+    [tableView deselectRowAtIndexPath:indexPath animated:YES];
+    
+}
+
+#pragma mark 空数据
+- (UIImage *)imageForEmptyDataSet:(UIScrollView *)scrollView {
+    
+    NSString *imageName = @"uploadFile_noData";
+    
+    if(self.tag == 101){
+        imageName = @"uploadFile_noData";
+    }
+    else if(self.tag == 102){
+        imageName = @"uploadFile_noData";
+    }
+    
+    return [UIImage imageNamed:imageName];
+}
+
+- (NSAttributedString *)titleForEmptyDataSet:(UIScrollView *)scrollView {
+    NSString *text = NSLocalizedString(@"File_upload_Record_no_data",nil);
+    
+    if(self.tag == 101){
+        text = NSLocalizedString(@"File_download_Record_no_data",nil);
+    }
+    else if(self.tag == 102){
+        text = NSLocalizedString(@"File_backups_Record_no_data",nil);
+    }
+    
+    NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:16.0f],
+                                 NSForegroundColorAttributeName: HW999999Color};
+    
+    return [[NSAttributedString alloc] initWithString:text attributes:attributes];
+}
+
+//调整图片位置
+- (CGFloat)verticalOffsetForEmptyDataSet:(UIScrollView *)scrollView {
+    return -150;
+}
+
+-(void)reloadDataFun{
+    mainBlock(^{
+        [self RefresHeadUIFun];
+        [self reloadData];
+    });
+}
+
+#pragma mark 初始化段头
+- (void)initTableHeaderInSectionFun
+{
+    KWeakSelf
+//    if(!_downloadingHeadView){
+//        _downloadingHeadView = [[uploadFileRecordTableViewHeadView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, 40)];
+//        //headView.backgroundColor = [UIColor greenColor];
+//
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_downloading",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_all_suspend",nil);
+//        NSString *rightSelectStr =  NSLocalizedString(@"File_upload_Record_all_open",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadingArr.count];
+//
+//        _downloadingHeadView.titleLabel.text = titleStr;
+//        [_downloadingHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//        [_downloadingHeadView.rightButton setTitle:rightSelectStr forState:UIControlStateSelected];
+//
+//        _downloadingHeadView.didClickButFun = ^{
+//            [weakSelf didClickRightButtonFun:0];
+//        };
+//    }
+//
+//
+//    if(!_failHeadView){
+//        _failHeadView = [[uploadFileRecordTableViewHeadView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, 40)];
+//        //headView.backgroundColor = [UIColor greenColor];
+//
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_download_fail",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_clear_Record",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadfailArr.count];
+//
+//         _failHeadView.titleLabel.text = titleStr;
+//        [_failHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//
+//        _failHeadView.didClickButFun = ^{
+//            [weakSelf didClickRightButtonFun:2];
+//        };
+//    }
+//
+//    if(!_doneHeadView){
+//        _doneHeadView = [[uploadFileRecordTableViewHeadView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, 40)];
+//        //headView.backgroundColor = [UIColor greenColor];
+//
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_did_download",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_clear_Record",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadDoneArr.count];
+//
+//        _doneHeadView.titleLabel.text = titleStr;
+//        [_doneHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//
+//        _doneHeadView.didClickButFun = ^{
+//            [weakSelf didClickRightButtonFun:1];
+//        };
+//    }
+//
+//
+}
+
+#pragma mark 点击头部右边按钮
+- (void)didClickRightButtonFun:(NSInteger)section
+{
+    if(_didClickSectionHeadViewRightButton){
+        _didClickSectionHeadViewRightButton(section);
+    }
+}
+
+#pragma mark 刷新头部数据
+-(void)RefresHeadUIFun
+{
+
+//    if(_downloadingHeadView){
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_downloading",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_all_suspend",nil);
+//        NSString *rightSelectStr =  NSLocalizedString(@"File_upload_Record_all_open",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadingArr.count];
+//
+//        _downloadingHeadView.titleLabel.text = titleStr;
+//        [_downloadingHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//        [_downloadingHeadView.rightButton setTitle:rightSelectStr forState:UIControlStateSelected];
+//
+//        if(_downloadingArr.count == 0){
+//            _downloadingHeadView.hidden = YES;
+//        }
+//        else{
+//            _downloadingHeadView.hidden = NO;
+//        }
+//    }
+//
+//
+//     if(_failHeadView){
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_download_fail",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_clear_Record",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadfailArr.count];
+//
+//         _failHeadView.titleLabel.text = titleStr;
+//        [_failHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//
+//         if(_downloadfailArr.count == 0){
+//             _failHeadView.hidden = YES;
+//         }
+//         else{
+//             _failHeadView.hidden = NO;
+//         }
+//    }
+//
+//    if(_doneHeadView){
+//        NSString *leftStr =  NSLocalizedString(@"File_upload_Record_did_download",nil);
+//        NSString *rightStr =  NSLocalizedString(@"File_upload_Record_clear_Record",nil);
+//        NSString *titleStr = [[NSString alloc] initWithFormat:@"%@ (%ld)",leftStr,_downloadDoneArr.count];
+//
+//        _doneHeadView.titleLabel.text = titleStr;
+//        [_doneHeadView.rightButton setTitle:rightStr forState:UIControlStateNormal];
+//
+//        if(_downloadDoneArr.count == 0){
+//            _doneHeadView.hidden = YES;
+//        }
+//        else{
+//            _doneHeadView.hidden = NO;
+//        }
+//    }
+}
+
+#pragma mark  点击全选
+- (void)setIsSelectAllType:(BOOL)isSelectAllType
+{
+    //_selectModelArr = [NSMutableArray arrayWithArray:_curDataArr];
+    
+    _selectModelArr = [NSMutableArray new];
+    
+    [_selectModelArr addObjectsFromArray:_downloadingArr];
+    [_selectModelArr addObjectsFromArray:_downloadfailArr];
+    [_selectModelArr addObjectsFromArray:_downloadDoneArr];
+    
+    [self reloadDataFun];
+}
+
+-(void)setIsEditType:(BOOL)isEditType
+{
+    _isEditType = isEditType;
+    
+    if(_isEditType){
+        //_bgScrollV.scrollEnabled = NO;
+    }
+    else{
+        //_bgScrollV.scrollEnabled = YES;
+        [_selectModelArr removeAllObjects];
+        
+    }
+    
+    [self reloadDataFun];
+}
+
+#pragma mark cell长按时间
+- (void)didLongPressClickFun{
+        self.isEditType = YES;
+        if(self->_didLongPressClick){
+            self->_didLongPressClick();
+        }
+}
+
+#pragma mark 单个点击选中 取消
+- (void)selectModelOneByOne:(couldPhoneFileModel*)model BySelect:(BOOL)isSelcet
+{
+    if(isSelcet){
+        [_selectModelArr addObject:model];
+    }
+    else{
+        [_selectModelArr removeObject:model];
+    }
+}
+
+#pragma mark 单个点击选中后删除
+- (void)deleteModelOneByOneFun{
+    if(!_selectModelArr || _selectModelArr.count==0){
+        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+            [SVProgressHUD dismiss];
+        });
+        return;
+    }
+    
+    //[[downloadManager shareInstance] deleteDownloadFileRecordBy:_selectModelArr withDelCache:YES];
+    
+    [_selectModelArr removeAllObjects];
+    //重新拿数据
+    [self refreshGetDatabaseFun];
+}
+
+#pragma mark 删除后重新拿数据
+- (void)refreshGetDatabaseFun
+{
+    if(_didNeedRefreshGetDatabaseFun){
+        _didNeedRefreshGetDatabaseFun();
+    }
+}
+
+#pragma mark 处理上传中的 状态点击事件
+- (void)handleDownloadingStateTapFunBy:(BOOL)isSuspendType with:(couldPhoneFileModel*)model
+{
+//    if (isSuspendType) {
+//        [[downloadManager shareInstance] suspendDownloadFileFun:NO withModel:model];
+//    }
+//    else{
+//        NSMutableArray*arr = [NSMutableArray new];
+//        [arr addObject:model];
+//        [[downloadManager shareInstance] reDownloadFileFunBy:arr withAll:NO];
+//    }
+//
+//    [self reloadDataFun];
+}
+
+#pragma mark 处理上传中的 状态点击事件
+- (void)handleUploadFailStateWith:(couldPhoneFileModel*)model{
+    
+//    [_downloadfailArr removeObject:model];
+//    [_downloadingArr addObject:model];
+//
+//    [self RefreshAllDataFun];
+//
+//    if(_didClickReUploadBlock){
+//        _didClickReUploadBlock(model);
+//    }
+//
+//    NSMutableArray*arr = [NSMutableArray new];
+//    model.curDownloadStateType = downloadStateWait;
+//    [arr addObject:model];
+//    [[downloadManager shareInstance] reDownloadFileFunBy:arr withAll:NO];
+    
+}
 @end
+

+ 71 - 6
创维盒子/双子星云手机/Class/Set/uploadFile/receiveView/receiveView.m

@@ -6,15 +6,80 @@
 //
 
 #import "receiveView.h"
+#import "receiveHeadView.h"
+#import "receiveDownloadRecordTableView.h"
+#import "receiveSaveRecordTableView.h"
+@interface receiveView ()
+{
+    
+}
+
+@property(nonatomic,strong) receiveHeadView * curReceiveHeadView;
+@property(nonatomic,strong) receiveDownloadRecordTableView * downloadRecordTableView;
+@property(nonatomic,strong) receiveSaveRecordTableView * saveRecordTableView;
+@end
 
 @implementation receiveView
 
-/*
-// Only override drawRect: if you perform custom drawing.
-// An empty implementation adversely affects performance during animation.
-- (void)drawRect:(CGRect)rect {
-    // Drawing code
+- (id)initWithFrame:(CGRect)frame{
+    self = [super initWithFrame:frame];
+    [self setBackgroundColor:[UIColor whiteColor]];
+    [self drawAnyView];
+    
+    return self;
+}
+
+- (void)drawAnyView{
+    _curReceiveHeadView = [[receiveHeadView alloc] init];
+    [self addSubview:_curReceiveHeadView];
+    
+    [_curReceiveHeadView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.left.mas_equalTo(0);
+        make.right.mas_equalTo(0);
+        make.top.mas_equalTo(0);
+        make.height.mas_equalTo(40);
+    }];
+    
+    KWeakSelf
+#pragma mark 点击接收的下载或者保存
+    _curReceiveHeadView.didClickbuttonFun = ^(NSInteger tag) {
+        [weakSelf didClickHeadButtonFun:tag];
+    };
+    
+    
+    _downloadRecordTableView = [[receiveDownloadRecordTableView alloc] init];
+    [self addSubview:_downloadRecordTableView];
+    
+    [_downloadRecordTableView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.left.mas_equalTo(0);
+        make.right.mas_equalTo(0);
+        make.top.equalTo(_curReceiveHeadView.mas_bottom).offset(0);
+        make.bottom.mas_equalTo(40);
+    }];
+    
+    _saveRecordTableView = [[receiveSaveRecordTableView alloc] init];
+    _saveRecordTableView.hidden = YES;
+    [self addSubview:_saveRecordTableView];
+    
+    [_saveRecordTableView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.left.mas_equalTo(0);
+        make.right.mas_equalTo(0);
+        make.top.equalTo(_curReceiveHeadView.mas_bottom).offset(0);
+        make.bottom.mas_equalTo(40);
+    }];
+}
+
+#pragma mark 点击下载和接收
+- (void)didClickHeadButtonFun:(NSInteger)tag
+{
+    if(tag == 1){
+        _downloadRecordTableView.hidden = NO;
+        _saveRecordTableView.hidden = YES;
+    }
+    else if(tag == 2){
+        _downloadRecordTableView.hidden = YES;
+        _saveRecordTableView.hidden = NO;
+    }
 }
-*/
 
 @end

+ 16 - 1
创维盒子/双子星云手机/Class/Set/uploadFile/uploadFileRecordViewController.m

@@ -21,6 +21,7 @@
 #import "downloadManager.h"
 #import "downloadFileRecordTableView.h"
 #import "MySetViewController.h"
+#import "receiveView.h"
 
 @interface uploadFileRecordViewController ()<UIScrollViewDelegate>
 
@@ -33,6 +34,9 @@
 @property (nonatomic, strong) downloadFileRecordTableView *midTableView;
 @property (nonatomic, strong) backupsFilerecordTableView *rightTableView;
 
+@property (nonatomic, strong) receiveView *curReceiveView;
+
+
 //@property (nonatomic,strong) uploadFileRecordTableViewHeadView *leftHeadView;
 //@property (nonatomic,strong) uploadFileRecordTableViewHeadView *midHeadView;
 
@@ -222,8 +226,19 @@
        // weakSelf.isEditType = YES;
     };
     
+    //接收
+    _curReceiveView = [[receiveView alloc] init];
+    _curReceiveView.tag = 103;
+    [_uploadFileRecordBgScorllV addSubview:_curReceiveView];
+
+    [_curReceiveView mas_makeConstraints:^(MASConstraintMaker *make) {
+        make.left.mas_equalTo(SCREEN_W*3.0);
+        make.width.mas_equalTo(SCREEN_W);
+        make.top.mas_equalTo(0);
+        make.height.mas_equalTo(curHeight);
+    }];
  
-    _uploadFileRecordBgScorllV.contentSize = CGSizeMake(SCREEN_W*3.0, curHeight);
+    _uploadFileRecordBgScorllV.contentSize = CGSizeMake(SCREEN_W*4.0, curHeight);
     
 //    _leftHeadView =  [[uploadFileRecordTableViewHeadView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, 40)];
 //    _leftTableView.tableHeaderView = _leftHeadView;

+ 1 - 1
创维盒子/双子星云手机/Class/Set/view/allVersionView.m

@@ -233,7 +233,7 @@
 //                cell.detailTextLabel.text = [[NSString alloc] initWithFormat:@"%@%@",curIp,networkStr];
                 
                 NSString * networkStr = @"公网";
-                if(![connectDeviceManager shareInstance].isPingOk){
+                if([connectDeviceManager shareInstance].isPingOk){
                     networkStr = @"局域网";
                 }
                 cell.detailTextLabel.text = networkStr;

+ 2 - 1
创维盒子/双子星云手机/zh-Hans.lproj/Localizable.strings

@@ -509,4 +509,5 @@
 "delete_file_suc_msg"   = "删除成功";
 "File_save_to_box_path_set"   = "接收路径设置";
 "File_save_to_box_check_title"   = "选择接收路径设置";
-
+"my_set_no_File_receive_title"   = "接收";
+"receive_save_title"   = "保存";