Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d845ed2cb0 | ||
|
|
e06dc32099 | ||
|
|
52222aa995 | ||
|
|
94ce6d3e14 | ||
|
|
71f6176cea | ||
|
|
97af177b88 | ||
|
|
dc1b1e330f | ||
|
|
431a19b043 | ||
|
|
ea869e7b42 |
@@ -11,19 +11,23 @@
|
|||||||
83048481214F489000603CE7 /* GiGaUserJobViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 83048480214F488F00603CE7 /* GiGaUserJobViewCell.m */; };
|
83048481214F489000603CE7 /* GiGaUserJobViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 83048480214F488F00603CE7 /* GiGaUserJobViewCell.m */; };
|
||||||
83048486214FACE700603CE7 /* JobMaskButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 83048485214FACE700603CE7 /* JobMaskButton.m */; };
|
83048486214FACE700603CE7 /* JobMaskButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 83048485214FACE700603CE7 /* JobMaskButton.m */; };
|
||||||
8314D2112133ABE500B458BF /* WeiIXinApiManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 8314D2102133ABE500B458BF /* WeiIXinApiManager.m */; };
|
8314D2112133ABE500B458BF /* WeiIXinApiManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 8314D2102133ABE500B458BF /* WeiIXinApiManager.m */; };
|
||||||
|
83276187216F29A800C6216C /* LXCustomActionSheet.m in Sources */ = {isa = PBXBuildFile; fileRef = 83276185216F29A800C6216C /* LXCustomActionSheet.m */; };
|
||||||
|
83319C852174376C005EF726 /* AppDelegate+ThirdParty.m in Sources */ = {isa = PBXBuildFile; fileRef = 83319C812174376B005EF726 /* AppDelegate+ThirdParty.m */; };
|
||||||
|
83319C862174376C005EF726 /* AppDelegate+GiGaConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 83319C822174376C005EF726 /* AppDelegate+GiGaConfig.m */; };
|
||||||
|
83319C87217437E0005EF726 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 8361B3CA212155C200238FEB /* AppDelegate.m */; };
|
||||||
83346AC0212BB50A0054D597 /* PassWordResetVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346ABE212BB50A0054D597 /* PassWordResetVC.m */; };
|
83346AC0212BB50A0054D597 /* PassWordResetVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346ABE212BB50A0054D597 /* PassWordResetVC.m */; };
|
||||||
83346AC1212BB50A0054D597 /* PassWordResetVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 83346ABF212BB50A0054D597 /* PassWordResetVC.xib */; };
|
83346AC1212BB50A0054D597 /* PassWordResetVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 83346ABF212BB50A0054D597 /* PassWordResetVC.xib */; };
|
||||||
83346AC5212BBC8C0054D597 /* GiGaRegistViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346AC3212BBC8C0054D597 /* GiGaRegistViewController.m */; };
|
83346AC5212BBC8C0054D597 /* GiGaRegistViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346AC3212BBC8C0054D597 /* GiGaRegistViewController.m */; };
|
||||||
83346AC6212BBC8C0054D597 /* GiGaRegistViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 83346AC4212BBC8C0054D597 /* GiGaRegistViewController.xib */; };
|
83346AC6212BBC8C0054D597 /* GiGaRegistViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 83346AC4212BBC8C0054D597 /* GiGaRegistViewController.xib */; };
|
||||||
83346ACE212BD7830054D597 /* GiGaWebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346ACC212BD7830054D597 /* GiGaWebViewController.m */; };
|
83346ACE212BD7830054D597 /* GiGaWebViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346ACC212BD7830054D597 /* GiGaWebViewController.m */; };
|
||||||
83346ACF212BD7830054D597 /* GiGaWebViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 83346ACD212BD7830054D597 /* GiGaWebViewController.xib */; };
|
83346ACF212BD7830054D597 /* GiGaWebViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 83346ACD212BD7830054D597 /* GiGaWebViewController.xib */; };
|
||||||
83346AD1212BF5B70054D597 /* useragreement.html in Resources */ = {isa = PBXBuildFile; fileRef = 83346AD0212BF5B70054D597 /* useragreement.html */; };
|
|
||||||
83346AD4212BFF6E0054D597 /* UserGuardViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346AD3212BFF6E0054D597 /* UserGuardViewController.m */; };
|
83346AD4212BFF6E0054D597 /* UserGuardViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346AD3212BFF6E0054D597 /* UserGuardViewController.m */; };
|
||||||
83346AD7212C18F50054D597 /* GiGaAppGaurdVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346AD6212C18F50054D597 /* GiGaAppGaurdVC.m */; };
|
83346AD7212C18F50054D597 /* GiGaAppGaurdVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 83346AD6212C18F50054D597 /* GiGaAppGaurdVC.m */; };
|
||||||
|
83379D0B217033A800986278 /* GiGaLoaclImageModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 83379D0A217033A800986278 /* GiGaLoaclImageModel.m */; };
|
||||||
|
83379D0E21703CC100986278 /* GIGaSharePageViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83379D0D21703CC100986278 /* GIGaSharePageViewController.m */; };
|
||||||
8338F6B12142182200B4780B /* MaskTime.png in Resources */ = {isa = PBXBuildFile; fileRef = 8338F6B02142182100B4780B /* MaskTime.png */; };
|
8338F6B12142182200B4780B /* MaskTime.png in Resources */ = {isa = PBXBuildFile; fileRef = 8338F6B02142182100B4780B /* MaskTime.png */; };
|
||||||
8338F6B92142504E00B4780B /* LXCustomSwith.m in Sources */ = {isa = PBXBuildFile; fileRef = 8338F6B82142504E00B4780B /* LXCustomSwith.m */; };
|
8338F6B92142504E00B4780B /* LXCustomSwith.m in Sources */ = {isa = PBXBuildFile; fileRef = 8338F6B82142504E00B4780B /* LXCustomSwith.m */; };
|
||||||
833DA7762122A62000A5C614 /* GiGaMaskTaskViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 833DA7752122A62000A5C614 /* GiGaMaskTaskViewController.m */; };
|
833DA7762122A62000A5C614 /* GiGaMaskTaskViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 833DA7752122A62000A5C614 /* GiGaMaskTaskViewController.m */; };
|
||||||
833DE8E52150169F009D4329 /* JYAddressPicker.m in Sources */ = {isa = PBXBuildFile; fileRef = 833DE8E32150169F009D4329 /* JYAddressPicker.m */; };
|
|
||||||
8340BF9E213E3846008F22E4 /* SHineLabel.m in Sources */ = {isa = PBXBuildFile; fileRef = 8340BF9D213E3846008F22E4 /* SHineLabel.m */; };
|
8340BF9E213E3846008F22E4 /* SHineLabel.m in Sources */ = {isa = PBXBuildFile; fileRef = 8340BF9D213E3846008F22E4 /* SHineLabel.m */; };
|
||||||
8340BFA2213E60DD008F22E4 /* GIGAMBHUDHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8340BFA1213E60DD008F22E4 /* GIGAMBHUDHelper.m */; };
|
8340BFA2213E60DD008F22E4 /* GIGAMBHUDHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8340BFA1213E60DD008F22E4 /* GIGAMBHUDHelper.m */; };
|
||||||
8340BFA6213E6514008F22E4 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 8340BFA5213E6514008F22E4 /* Localizable.strings */; };
|
8340BFA6213E6514008F22E4 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 8340BFA5213E6514008F22E4 /* Localizable.strings */; };
|
||||||
@@ -45,13 +49,11 @@
|
|||||||
834415F3215B5F8200A6D906 /* GiGaShareModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 834415F2215B5F8200A6D906 /* GiGaShareModel.m */; };
|
834415F3215B5F8200A6D906 /* GiGaShareModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 834415F2215B5F8200A6D906 /* GiGaShareModel.m */; };
|
||||||
834415F6215B89A300A6D906 /* MaskTimeTopAnimationView.m in Sources */ = {isa = PBXBuildFile; fileRef = 834415F5215B89A300A6D906 /* MaskTimeTopAnimationView.m */; };
|
834415F6215B89A300A6D906 /* MaskTimeTopAnimationView.m in Sources */ = {isa = PBXBuildFile; fileRef = 834415F5215B89A300A6D906 /* MaskTimeTopAnimationView.m */; };
|
||||||
8345C13621414D3B00051717 /* NSString+Unicode.m in Sources */ = {isa = PBXBuildFile; fileRef = 8345C13521414D3B00051717 /* NSString+Unicode.m */; };
|
8345C13621414D3B00051717 /* NSString+Unicode.m in Sources */ = {isa = PBXBuildFile; fileRef = 8345C13521414D3B00051717 /* NSString+Unicode.m */; };
|
||||||
8349585C212511040064DB6C /* AppDelegate+ThirdParty.m in Sources */ = {isa = PBXBuildFile; fileRef = 8349585B212511040064DB6C /* AppDelegate+ThirdParty.m */; };
|
|
||||||
834BDA48215C7D10001E1DB7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 834BDA47215C7D0F001E1DB7 /* InfoPlist.strings */; };
|
834BDA48215C7D10001E1DB7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 834BDA47215C7D0F001E1DB7 /* InfoPlist.strings */; };
|
||||||
834DA5A5215F5F3B003FC4C6 /* ShareViewSystemImageHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 834DA5A4215F5F3B003FC4C6 /* ShareViewSystemImageHelper.m */; };
|
834DA5A5215F5F3B003FC4C6 /* ShareViewSystemImageHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 834DA5A4215F5F3B003FC4C6 /* ShareViewSystemImageHelper.m */; };
|
||||||
834DA5A8215F5FE0003FC4C6 /* ShareCustomIamgeModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 834DA5A7215F5FE0003FC4C6 /* ShareCustomIamgeModel.m */; };
|
834DA5A8215F5FE0003FC4C6 /* ShareCustomIamgeModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 834DA5A7215F5FE0003FC4C6 /* ShareCustomIamgeModel.m */; };
|
||||||
834DA5AB215F6840003FC4C6 /* JobModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 834DA5AA215F6840003FC4C6 /* JobModel.m */; };
|
834DA5AB215F6840003FC4C6 /* JobModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 834DA5AA215F6840003FC4C6 /* JobModel.m */; };
|
||||||
835060A2212D1225007E6220 /* GiGaMeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 835060A1212D1225007E6220 /* GiGaMeViewController.m */; };
|
835060A2212D1225007E6220 /* GiGaMeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 835060A1212D1225007E6220 /* GiGaMeViewController.m */; };
|
||||||
835060A5212D3536007E6220 /* AppDelegate+GiGaConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = 8361B40A21217B2100238FEB /* AppDelegate+GiGaConfig.m */; };
|
|
||||||
835060A9212D38EE007E6220 /* GiGaStartAdView.m in Sources */ = {isa = PBXBuildFile; fileRef = 835060A8212D38EE007E6220 /* GiGaStartAdView.m */; };
|
835060A9212D38EE007E6220 /* GiGaStartAdView.m in Sources */ = {isa = PBXBuildFile; fileRef = 835060A8212D38EE007E6220 /* GiGaStartAdView.m */; };
|
||||||
835060AD212D4D0C007E6220 /* GiGaFileNanager.m in Sources */ = {isa = PBXBuildFile; fileRef = 835060AC212D4D0C007E6220 /* GiGaFileNanager.m */; };
|
835060AD212D4D0C007E6220 /* GiGaFileNanager.m in Sources */ = {isa = PBXBuildFile; fileRef = 835060AC212D4D0C007E6220 /* GiGaFileNanager.m */; };
|
||||||
835060B3212D54C2007E6220 /* GiGaAdDetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 835060B2212D54C2007E6220 /* GiGaAdDetailViewController.m */; };
|
835060B3212D54C2007E6220 /* GiGaAdDetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 835060B2212D54C2007E6220 /* GiGaAdDetailViewController.m */; };
|
||||||
@@ -72,7 +74,8 @@
|
|||||||
8357ADD32123C7C6000816F2 /* GiGaAPIResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8357ADD22123C7C6000816F2 /* GiGaAPIResult.m */; };
|
8357ADD32123C7C6000816F2 /* GiGaAPIResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8357ADD22123C7C6000816F2 /* GiGaAPIResult.m */; };
|
||||||
8357ADD52123F5EC000816F2 /* libsqlite3.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 8357ADD42123F5EC000816F2 /* libsqlite3.tbd */; };
|
8357ADD52123F5EC000816F2 /* libsqlite3.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 8357ADD42123F5EC000816F2 /* libsqlite3.tbd */; };
|
||||||
8357ADD82124027D000816F2 /* GiGaUserDefault.m in Sources */ = {isa = PBXBuildFile; fileRef = 8357ADD72124027D000816F2 /* GiGaUserDefault.m */; };
|
8357ADD82124027D000816F2 /* GiGaUserDefault.m in Sources */ = {isa = PBXBuildFile; fileRef = 8357ADD72124027D000816F2 /* GiGaUserDefault.m */; };
|
||||||
8361B3CB212155C200238FEB /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 8361B3CA212155C200238FEB /* AppDelegate.m */; };
|
835A0EAC216AF03C00ABAB1C /* GiGaPageControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 835A0EAB216AF03C00ABAB1C /* GiGaPageControl.m */; };
|
||||||
|
835A0EAF216AFDC300ABAB1C /* LXPageControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 835A0EAE216AFDC300ABAB1C /* LXPageControl.m */; };
|
||||||
8361B3CE212155C200238FEB /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8361B3CD212155C200238FEB /* ViewController.m */; };
|
8361B3CE212155C200238FEB /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8361B3CD212155C200238FEB /* ViewController.m */; };
|
||||||
8361B3D1212155C200238FEB /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 8361B3CF212155C200238FEB /* Main.storyboard */; };
|
8361B3D1212155C200238FEB /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 8361B3CF212155C200238FEB /* Main.storyboard */; };
|
||||||
8361B3D3212155C300238FEB /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 8361B3D2212155C300238FEB /* Assets.xcassets */; };
|
8361B3D3212155C300238FEB /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 8361B3D2212155C300238FEB /* Assets.xcassets */; };
|
||||||
@@ -102,7 +105,6 @@
|
|||||||
836EE5D7213645E300F0ABB2 /* GiGaBaseAPiRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 836EE5D6213645E300F0ABB2 /* GiGaBaseAPiRequest.m */; };
|
836EE5D7213645E300F0ABB2 /* GiGaBaseAPiRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 836EE5D6213645E300F0ABB2 /* GiGaBaseAPiRequest.m */; };
|
||||||
836EE5DA2136716100F0ABB2 /* NSTimer+Convenience.m in Sources */ = {isa = PBXBuildFile; fileRef = 836EE5D82136716000F0ABB2 /* NSTimer+Convenience.m */; };
|
836EE5DA2136716100F0ABB2 /* NSTimer+Convenience.m in Sources */ = {isa = PBXBuildFile; fileRef = 836EE5D82136716000F0ABB2 /* NSTimer+Convenience.m */; };
|
||||||
8376B81E2154897700AB79F8 /* GIGaUserFileHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8376B81D2154897700AB79F8 /* GIGaUserFileHelper.m */; };
|
8376B81E2154897700AB79F8 /* GIGaUserFileHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 8376B81D2154897700AB79F8 /* GIGaUserFileHelper.m */; };
|
||||||
8376B8202154913E00AB79F8 /* city.json in Resources */ = {isa = PBXBuildFile; fileRef = 8376B81F2154913E00AB79F8 /* city.json */; };
|
|
||||||
8376B8232154927300AB79F8 /* GIGaMaskShareViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8376B8222154927300AB79F8 /* GIGaMaskShareViewController.m */; };
|
8376B8232154927300AB79F8 /* GIGaMaskShareViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8376B8222154927300AB79F8 /* GIGaMaskShareViewController.m */; };
|
||||||
8376B8282154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8376B8262154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.m */; };
|
8376B8282154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8376B8262154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.m */; };
|
||||||
8376B8292154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8376B8272154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.xib */; };
|
8376B8292154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8376B8272154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.xib */; };
|
||||||
@@ -171,7 +173,6 @@
|
|||||||
838388C8212F9C4200D14C53 /* GiGaLocalNotificationManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 838388C7212F9C4200D14C53 /* GiGaLocalNotificationManager.m */; };
|
838388C8212F9C4200D14C53 /* GiGaLocalNotificationManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 838388C7212F9C4200D14C53 /* GiGaLocalNotificationManager.m */; };
|
||||||
838388D3212FB7D700D14C53 /* JXTAlertController.m in Sources */ = {isa = PBXBuildFile; fileRef = 838388CE212FB7D700D14C53 /* JXTAlertController.m */; };
|
838388D3212FB7D700D14C53 /* JXTAlertController.m in Sources */ = {isa = PBXBuildFile; fileRef = 838388CE212FB7D700D14C53 /* JXTAlertController.m */; };
|
||||||
838388D4212FB7D700D14C53 /* JXTAlertView.m in Sources */ = {isa = PBXBuildFile; fileRef = 838388D2212FB7D700D14C53 /* JXTAlertView.m */; };
|
838388D4212FB7D700D14C53 /* JXTAlertView.m in Sources */ = {isa = PBXBuildFile; fileRef = 838388D2212FB7D700D14C53 /* JXTAlertView.m */; };
|
||||||
838388DA2130046D00D14C53 /* emojizone.mp4 in Resources */ = {isa = PBXBuildFile; fileRef = 838388D92130046D00D14C53 /* emojizone.mp4 */; };
|
|
||||||
8384643E214A484400F12B33 /* MaskTestResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8384643D214A484400F12B33 /* MaskTestResult.m */; };
|
8384643E214A484400F12B33 /* MaskTestResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 8384643D214A484400F12B33 /* MaskTestResult.m */; };
|
||||||
83846441214A4BFF00F12B33 /* MaskTestResultVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 83846440214A4BFF00F12B33 /* MaskTestResultVC.m */; };
|
83846441214A4BFF00F12B33 /* MaskTestResultVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 83846440214A4BFF00F12B33 /* MaskTestResultVC.m */; };
|
||||||
8384F0E821533528002C19F0 /* MaskResultPercentCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8384F0E721533528002C19F0 /* MaskResultPercentCell.m */; };
|
8384F0E821533528002C19F0 /* MaskResultPercentCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8384F0E721533528002C19F0 /* MaskResultPercentCell.m */; };
|
||||||
@@ -189,6 +190,9 @@
|
|||||||
838762E3214B9F580039D241 /* GiGaUserSexViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 838762E1214B9F580039D241 /* GiGaUserSexViewCell.xib */; };
|
838762E3214B9F580039D241 /* GiGaUserSexViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 838762E1214B9F580039D241 /* GiGaUserSexViewCell.xib */; };
|
||||||
838762E7214B9FA60039D241 /* GIGaUserCityViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 838762E5214B9FA60039D241 /* GIGaUserCityViewCell.m */; };
|
838762E7214B9FA60039D241 /* GIGaUserCityViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 838762E5214B9FA60039D241 /* GIGaUserCityViewCell.m */; };
|
||||||
838762E8214B9FA60039D241 /* GIGaUserCityViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 838762E6214B9FA60039D241 /* GIGaUserCityViewCell.xib */; };
|
838762E8214B9FA60039D241 /* GIGaUserCityViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 838762E6214B9FA60039D241 /* GIGaUserCityViewCell.xib */; };
|
||||||
|
838CD5972179E11E000CBEA6 /* GIGaDateHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 838CD5962179E11E000CBEA6 /* GIGaDateHelper.m */; };
|
||||||
|
838CD5A22179E79C000CBEA6 /* city.json in Resources */ = {isa = PBXBuildFile; fileRef = 838CD5A02179E79C000CBEA6 /* city.json */; };
|
||||||
|
838CD5A32179E79C000CBEA6 /* JYAddressPicker.m in Sources */ = {isa = PBXBuildFile; fileRef = 838CD5A12179E79C000CBEA6 /* JYAddressPicker.m */; };
|
||||||
8390116B214E20B2004CA790 /* LYSDateContentView.m in Sources */ = {isa = PBXBuildFile; fileRef = 83901145214E20B1004CA790 /* LYSDateContentView.m */; };
|
8390116B214E20B2004CA790 /* LYSDateContentView.m in Sources */ = {isa = PBXBuildFile; fileRef = 83901145214E20B1004CA790 /* LYSDateContentView.m */; };
|
||||||
8390116C214E20B2004CA790 /* LYSDatePopViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83901149214E20B1004CA790 /* LYSDatePopViewController.m */; };
|
8390116C214E20B2004CA790 /* LYSDatePopViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83901149214E20B1004CA790 /* LYSDatePopViewController.m */; };
|
||||||
8390116D214E20B2004CA790 /* LYSDateBaseViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83901151214E20B1004CA790 /* LYSDateBaseViewController.m */; };
|
8390116D214E20B2004CA790 /* LYSDateBaseViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83901151214E20B1004CA790 /* LYSDateBaseViewController.m */; };
|
||||||
@@ -240,6 +244,7 @@
|
|||||||
83C78A15215873170083DDD9 /* MaskHistoryListViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 83C78A13215873170083DDD9 /* MaskHistoryListViewCell.xib */; };
|
83C78A15215873170083DDD9 /* MaskHistoryListViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 83C78A13215873170083DDD9 /* MaskHistoryListViewCell.xib */; };
|
||||||
83C78A192159D74D0083DDD9 /* UIImage+LogoQrCode.m in Sources */ = {isa = PBXBuildFile; fileRef = 83C78A182159D74D0083DDD9 /* UIImage+LogoQrCode.m */; };
|
83C78A192159D74D0083DDD9 /* UIImage+LogoQrCode.m in Sources */ = {isa = PBXBuildFile; fileRef = 83C78A182159D74D0083DDD9 /* UIImage+LogoQrCode.m */; };
|
||||||
83C78A1C2159DD920083DDD9 /* UIImage+ShotImage.m in Sources */ = {isa = PBXBuildFile; fileRef = 83C78A1B2159DD920083DDD9 /* UIImage+ShotImage.m */; };
|
83C78A1C2159DD920083DDD9 /* UIImage+ShotImage.m in Sources */ = {isa = PBXBuildFile; fileRef = 83C78A1B2159DD920083DDD9 /* UIImage+ShotImage.m */; };
|
||||||
|
83D0B92C216C5A80006B77DC /* ogg_btn.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 83D0B92B216C5A80006B77DC /* ogg_btn.mp3 */; };
|
||||||
83D3832D215A2CF5009E8669 /* MaskHistryRecord.m in Sources */ = {isa = PBXBuildFile; fileRef = 83D3832C215A2CF5009E8669 /* MaskHistryRecord.m */; };
|
83D3832D215A2CF5009E8669 /* MaskHistryRecord.m in Sources */ = {isa = PBXBuildFile; fileRef = 83D3832C215A2CF5009E8669 /* MaskHistryRecord.m */; };
|
||||||
83E40B2F21218BA0008149C4 /* GiGaUserViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83E40B2E21218BA0008149C4 /* GiGaUserViewController.m */; };
|
83E40B2F21218BA0008149C4 /* GiGaUserViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 83E40B2E21218BA0008149C4 /* GiGaUserViewController.m */; };
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
@@ -270,6 +275,12 @@
|
|||||||
8314D20F2133ABE500B458BF /* WeiIXinApiManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WeiIXinApiManager.h; sourceTree = "<group>"; };
|
8314D20F2133ABE500B458BF /* WeiIXinApiManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WeiIXinApiManager.h; sourceTree = "<group>"; };
|
||||||
8314D2102133ABE500B458BF /* WeiIXinApiManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WeiIXinApiManager.m; sourceTree = "<group>"; };
|
8314D2102133ABE500B458BF /* WeiIXinApiManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = WeiIXinApiManager.m; sourceTree = "<group>"; };
|
||||||
8314D2122133F44600B458BF /* MobClickList.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MobClickList.h; sourceTree = "<group>"; };
|
8314D2122133F44600B458BF /* MobClickList.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MobClickList.h; sourceTree = "<group>"; };
|
||||||
|
83276185216F29A800C6216C /* LXCustomActionSheet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LXCustomActionSheet.m; sourceTree = "<group>"; };
|
||||||
|
83276186216F29A800C6216C /* LXCustomActionSheet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LXCustomActionSheet.h; sourceTree = "<group>"; };
|
||||||
|
83319C812174376B005EF726 /* AppDelegate+ThirdParty.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "AppDelegate+ThirdParty.m"; sourceTree = "<group>"; };
|
||||||
|
83319C822174376C005EF726 /* AppDelegate+GiGaConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "AppDelegate+GiGaConfig.m"; sourceTree = "<group>"; };
|
||||||
|
83319C832174376C005EF726 /* AppDelegate+GiGaConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AppDelegate+GiGaConfig.h"; sourceTree = "<group>"; };
|
||||||
|
83319C842174376C005EF726 /* AppDelegate+ThirdParty.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "AppDelegate+ThirdParty.h"; sourceTree = "<group>"; };
|
||||||
83346ABD212BB50A0054D597 /* PassWordResetVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PassWordResetVC.h; sourceTree = "<group>"; };
|
83346ABD212BB50A0054D597 /* PassWordResetVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PassWordResetVC.h; sourceTree = "<group>"; };
|
||||||
83346ABE212BB50A0054D597 /* PassWordResetVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PassWordResetVC.m; sourceTree = "<group>"; };
|
83346ABE212BB50A0054D597 /* PassWordResetVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PassWordResetVC.m; sourceTree = "<group>"; };
|
||||||
83346ABF212BB50A0054D597 /* PassWordResetVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PassWordResetVC.xib; sourceTree = "<group>"; };
|
83346ABF212BB50A0054D597 /* PassWordResetVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PassWordResetVC.xib; sourceTree = "<group>"; };
|
||||||
@@ -279,18 +290,19 @@
|
|||||||
83346ACB212BD7830054D597 /* GiGaWebViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaWebViewController.h; sourceTree = "<group>"; };
|
83346ACB212BD7830054D597 /* GiGaWebViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaWebViewController.h; sourceTree = "<group>"; };
|
||||||
83346ACC212BD7830054D597 /* GiGaWebViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaWebViewController.m; sourceTree = "<group>"; };
|
83346ACC212BD7830054D597 /* GiGaWebViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaWebViewController.m; sourceTree = "<group>"; };
|
||||||
83346ACD212BD7830054D597 /* GiGaWebViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GiGaWebViewController.xib; sourceTree = "<group>"; };
|
83346ACD212BD7830054D597 /* GiGaWebViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GiGaWebViewController.xib; sourceTree = "<group>"; };
|
||||||
83346AD0212BF5B70054D597 /* useragreement.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = useragreement.html; sourceTree = "<group>"; };
|
|
||||||
83346AD2212BFF6E0054D597 /* UserGuardViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UserGuardViewController.h; sourceTree = "<group>"; };
|
83346AD2212BFF6E0054D597 /* UserGuardViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UserGuardViewController.h; sourceTree = "<group>"; };
|
||||||
83346AD3212BFF6E0054D597 /* UserGuardViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UserGuardViewController.m; sourceTree = "<group>"; };
|
83346AD3212BFF6E0054D597 /* UserGuardViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UserGuardViewController.m; sourceTree = "<group>"; };
|
||||||
83346AD5212C18F50054D597 /* GiGaAppGaurdVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaAppGaurdVC.h; sourceTree = "<group>"; };
|
83346AD5212C18F50054D597 /* GiGaAppGaurdVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaAppGaurdVC.h; sourceTree = "<group>"; };
|
||||||
83346AD6212C18F50054D597 /* GiGaAppGaurdVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaAppGaurdVC.m; sourceTree = "<group>"; };
|
83346AD6212C18F50054D597 /* GiGaAppGaurdVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaAppGaurdVC.m; sourceTree = "<group>"; };
|
||||||
|
83379D09217033A800986278 /* GiGaLoaclImageModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaLoaclImageModel.h; sourceTree = "<group>"; };
|
||||||
|
83379D0A217033A800986278 /* GiGaLoaclImageModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaLoaclImageModel.m; sourceTree = "<group>"; };
|
||||||
|
83379D0C21703CC100986278 /* GIGaSharePageViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GIGaSharePageViewController.h; sourceTree = "<group>"; };
|
||||||
|
83379D0D21703CC100986278 /* GIGaSharePageViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GIGaSharePageViewController.m; sourceTree = "<group>"; };
|
||||||
8338F6B02142182100B4780B /* MaskTime.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MaskTime.png; sourceTree = "<group>"; };
|
8338F6B02142182100B4780B /* MaskTime.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MaskTime.png; sourceTree = "<group>"; };
|
||||||
8338F6B72142504E00B4780B /* LXCustomSwith.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LXCustomSwith.h; sourceTree = "<group>"; };
|
8338F6B72142504E00B4780B /* LXCustomSwith.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LXCustomSwith.h; sourceTree = "<group>"; };
|
||||||
8338F6B82142504E00B4780B /* LXCustomSwith.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LXCustomSwith.m; sourceTree = "<group>"; };
|
8338F6B82142504E00B4780B /* LXCustomSwith.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LXCustomSwith.m; sourceTree = "<group>"; };
|
||||||
833DA7742122A62000A5C614 /* GiGaMaskTaskViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaMaskTaskViewController.h; sourceTree = "<group>"; };
|
833DA7742122A62000A5C614 /* GiGaMaskTaskViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaMaskTaskViewController.h; sourceTree = "<group>"; };
|
||||||
833DA7752122A62000A5C614 /* GiGaMaskTaskViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaMaskTaskViewController.m; sourceTree = "<group>"; };
|
833DA7752122A62000A5C614 /* GiGaMaskTaskViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaMaskTaskViewController.m; sourceTree = "<group>"; };
|
||||||
833DE8E12150169F009D4329 /* JYAddressPicker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JYAddressPicker.h; sourceTree = "<group>"; };
|
|
||||||
833DE8E32150169F009D4329 /* JYAddressPicker.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JYAddressPicker.m; sourceTree = "<group>"; };
|
|
||||||
8340BF9C213E3846008F22E4 /* SHineLabel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SHineLabel.h; sourceTree = "<group>"; };
|
8340BF9C213E3846008F22E4 /* SHineLabel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SHineLabel.h; sourceTree = "<group>"; };
|
||||||
8340BF9D213E3846008F22E4 /* SHineLabel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SHineLabel.m; sourceTree = "<group>"; };
|
8340BF9D213E3846008F22E4 /* SHineLabel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SHineLabel.m; sourceTree = "<group>"; };
|
||||||
8340BFA0213E60DD008F22E4 /* GIGAMBHUDHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GIGAMBHUDHelper.h; sourceTree = "<group>"; };
|
8340BFA0213E60DD008F22E4 /* GIGAMBHUDHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GIGAMBHUDHelper.h; sourceTree = "<group>"; };
|
||||||
@@ -327,8 +339,6 @@
|
|||||||
834415F5215B89A300A6D906 /* MaskTimeTopAnimationView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MaskTimeTopAnimationView.m; sourceTree = "<group>"; };
|
834415F5215B89A300A6D906 /* MaskTimeTopAnimationView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MaskTimeTopAnimationView.m; sourceTree = "<group>"; };
|
||||||
8345C13421414D3B00051717 /* NSString+Unicode.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSString+Unicode.h"; sourceTree = "<group>"; };
|
8345C13421414D3B00051717 /* NSString+Unicode.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSString+Unicode.h"; sourceTree = "<group>"; };
|
||||||
8345C13521414D3B00051717 /* NSString+Unicode.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSString+Unicode.m"; sourceTree = "<group>"; };
|
8345C13521414D3B00051717 /* NSString+Unicode.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSString+Unicode.m"; sourceTree = "<group>"; };
|
||||||
8349585A212511040064DB6C /* AppDelegate+ThirdParty.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "AppDelegate+ThirdParty.h"; sourceTree = "<group>"; };
|
|
||||||
8349585B212511040064DB6C /* AppDelegate+ThirdParty.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "AppDelegate+ThirdParty.m"; sourceTree = "<group>"; };
|
|
||||||
834BDA47215C7D0F001E1DB7 /* InfoPlist.strings */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; path = InfoPlist.strings; sourceTree = "<group>"; };
|
834BDA47215C7D0F001E1DB7 /* InfoPlist.strings */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; path = InfoPlist.strings; sourceTree = "<group>"; };
|
||||||
834DA5A3215F5F3B003FC4C6 /* ShareViewSystemImageHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ShareViewSystemImageHelper.h; sourceTree = "<group>"; };
|
834DA5A3215F5F3B003FC4C6 /* ShareViewSystemImageHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ShareViewSystemImageHelper.h; sourceTree = "<group>"; };
|
||||||
834DA5A4215F5F3B003FC4C6 /* ShareViewSystemImageHelper.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ShareViewSystemImageHelper.m; sourceTree = "<group>"; };
|
834DA5A4215F5F3B003FC4C6 /* ShareViewSystemImageHelper.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ShareViewSystemImageHelper.m; sourceTree = "<group>"; };
|
||||||
@@ -374,6 +384,10 @@
|
|||||||
8357ADD42123F5EC000816F2 /* libsqlite3.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libsqlite3.tbd; path = usr/lib/libsqlite3.tbd; sourceTree = SDKROOT; };
|
8357ADD42123F5EC000816F2 /* libsqlite3.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libsqlite3.tbd; path = usr/lib/libsqlite3.tbd; sourceTree = SDKROOT; };
|
||||||
8357ADD62124027D000816F2 /* GiGaUserDefault.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaUserDefault.h; sourceTree = "<group>"; };
|
8357ADD62124027D000816F2 /* GiGaUserDefault.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaUserDefault.h; sourceTree = "<group>"; };
|
||||||
8357ADD72124027D000816F2 /* GiGaUserDefault.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaUserDefault.m; sourceTree = "<group>"; };
|
8357ADD72124027D000816F2 /* GiGaUserDefault.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaUserDefault.m; sourceTree = "<group>"; };
|
||||||
|
835A0EAA216AF03C00ABAB1C /* GiGaPageControl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaPageControl.h; sourceTree = "<group>"; };
|
||||||
|
835A0EAB216AF03C00ABAB1C /* GiGaPageControl.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaPageControl.m; sourceTree = "<group>"; };
|
||||||
|
835A0EAD216AFDC300ABAB1C /* LXPageControl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LXPageControl.h; sourceTree = "<group>"; };
|
||||||
|
835A0EAE216AFDC300ABAB1C /* LXPageControl.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LXPageControl.m; sourceTree = "<group>"; };
|
||||||
8361B3C6212155C200238FEB /* GIGA.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = GIGA.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
8361B3C6212155C200238FEB /* GIGA.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = GIGA.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
8361B3C9212155C200238FEB /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
|
8361B3C9212155C200238FEB /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
|
||||||
8361B3CA212155C200238FEB /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
|
8361B3CA212155C200238FEB /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
|
||||||
@@ -396,8 +410,6 @@
|
|||||||
8361B40321215E0C00238FEB /* LXCountTimer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LXCountTimer.h; sourceTree = "<group>"; };
|
8361B40321215E0C00238FEB /* LXCountTimer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LXCountTimer.h; sourceTree = "<group>"; };
|
||||||
8361B40521215E6F00238FEB /* GiGaHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaHelper.h; sourceTree = "<group>"; };
|
8361B40521215E6F00238FEB /* GiGaHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaHelper.h; sourceTree = "<group>"; };
|
||||||
8361B40621215E6F00238FEB /* GiGaHelper.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaHelper.m; sourceTree = "<group>"; };
|
8361B40621215E6F00238FEB /* GiGaHelper.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiGaHelper.m; sourceTree = "<group>"; };
|
||||||
8361B40921217B2100238FEB /* AppDelegate+GiGaConfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "AppDelegate+GiGaConfig.h"; sourceTree = "<group>"; };
|
|
||||||
8361B40A21217B2100238FEB /* AppDelegate+GiGaConfig.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "AppDelegate+GiGaConfig.m"; sourceTree = "<group>"; };
|
|
||||||
8361B40C21217C8200238FEB /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; };
|
8361B40C21217C8200238FEB /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; };
|
||||||
8361B40E21217C9100238FEB /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; };
|
8361B40E21217C9100238FEB /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; };
|
||||||
8361B41021217CA100238FEB /* CoreTelephony.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreTelephony.framework; path = System/Library/Frameworks/CoreTelephony.framework; sourceTree = SDKROOT; };
|
8361B41021217CA100238FEB /* CoreTelephony.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreTelephony.framework; path = System/Library/Frameworks/CoreTelephony.framework; sourceTree = SDKROOT; };
|
||||||
@@ -426,7 +438,6 @@
|
|||||||
836EE5D92136716000F0ABB2 /* NSTimer+Convenience.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTimer+Convenience.h"; sourceTree = "<group>"; };
|
836EE5D92136716000F0ABB2 /* NSTimer+Convenience.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSTimer+Convenience.h"; sourceTree = "<group>"; };
|
||||||
8376B81C2154897700AB79F8 /* GIGaUserFileHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GIGaUserFileHelper.h; sourceTree = "<group>"; };
|
8376B81C2154897700AB79F8 /* GIGaUserFileHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GIGaUserFileHelper.h; sourceTree = "<group>"; };
|
||||||
8376B81D2154897700AB79F8 /* GIGaUserFileHelper.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GIGaUserFileHelper.m; sourceTree = "<group>"; };
|
8376B81D2154897700AB79F8 /* GIGaUserFileHelper.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GIGaUserFileHelper.m; sourceTree = "<group>"; };
|
||||||
8376B81F2154913E00AB79F8 /* city.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = city.json; sourceTree = "<group>"; };
|
|
||||||
8376B8212154927300AB79F8 /* GIGaMaskShareViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GIGaMaskShareViewController.h; sourceTree = "<group>"; };
|
8376B8212154927300AB79F8 /* GIGaMaskShareViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GIGaMaskShareViewController.h; sourceTree = "<group>"; };
|
||||||
8376B8222154927300AB79F8 /* GIGaMaskShareViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GIGaMaskShareViewController.m; sourceTree = "<group>"; };
|
8376B8222154927300AB79F8 /* GIGaMaskShareViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GIGaMaskShareViewController.m; sourceTree = "<group>"; };
|
||||||
8376B8252154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MaskTimeEndViewImgaeCell.h; path = GIGA/Modules/Mask/View/MaskTimeEndViewImgaeCell.h; sourceTree = SOURCE_ROOT; };
|
8376B8252154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MaskTimeEndViewImgaeCell.h; path = GIGA/Modules/Mask/View/MaskTimeEndViewImgaeCell.h; sourceTree = SOURCE_ROOT; };
|
||||||
@@ -547,7 +558,6 @@
|
|||||||
838388CF212FB7D700D14C53 /* JXTAlertManagerHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JXTAlertManagerHeader.h; sourceTree = "<group>"; };
|
838388CF212FB7D700D14C53 /* JXTAlertManagerHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JXTAlertManagerHeader.h; sourceTree = "<group>"; };
|
||||||
838388D1212FB7D700D14C53 /* JXTAlertView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JXTAlertView.h; sourceTree = "<group>"; };
|
838388D1212FB7D700D14C53 /* JXTAlertView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JXTAlertView.h; sourceTree = "<group>"; };
|
||||||
838388D2212FB7D700D14C53 /* JXTAlertView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JXTAlertView.m; sourceTree = "<group>"; };
|
838388D2212FB7D700D14C53 /* JXTAlertView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JXTAlertView.m; sourceTree = "<group>"; };
|
||||||
838388D92130046D00D14C53 /* emojizone.mp4 */ = {isa = PBXFileReference; lastKnownFileType = file; path = emojizone.mp4; sourceTree = "<group>"; };
|
|
||||||
8384643C214A484400F12B33 /* MaskTestResult.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MaskTestResult.h; sourceTree = "<group>"; };
|
8384643C214A484400F12B33 /* MaskTestResult.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MaskTestResult.h; sourceTree = "<group>"; };
|
||||||
8384643D214A484400F12B33 /* MaskTestResult.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MaskTestResult.m; sourceTree = "<group>"; };
|
8384643D214A484400F12B33 /* MaskTestResult.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MaskTestResult.m; sourceTree = "<group>"; };
|
||||||
8384643F214A4BFF00F12B33 /* MaskTestResultVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MaskTestResultVC.h; sourceTree = "<group>"; };
|
8384643F214A4BFF00F12B33 /* MaskTestResultVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MaskTestResultVC.h; sourceTree = "<group>"; };
|
||||||
@@ -577,6 +587,11 @@
|
|||||||
838762E4214B9FA60039D241 /* GIGaUserCityViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GIGaUserCityViewCell.h; sourceTree = "<group>"; };
|
838762E4214B9FA60039D241 /* GIGaUserCityViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GIGaUserCityViewCell.h; sourceTree = "<group>"; };
|
||||||
838762E5214B9FA60039D241 /* GIGaUserCityViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GIGaUserCityViewCell.m; sourceTree = "<group>"; };
|
838762E5214B9FA60039D241 /* GIGaUserCityViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GIGaUserCityViewCell.m; sourceTree = "<group>"; };
|
||||||
838762E6214B9FA60039D241 /* GIGaUserCityViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GIGaUserCityViewCell.xib; sourceTree = "<group>"; };
|
838762E6214B9FA60039D241 /* GIGaUserCityViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GIGaUserCityViewCell.xib; sourceTree = "<group>"; };
|
||||||
|
838CD5952179E11D000CBEA6 /* GIGaDateHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GIGaDateHelper.h; sourceTree = "<group>"; };
|
||||||
|
838CD5962179E11E000CBEA6 /* GIGaDateHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GIGaDateHelper.m; sourceTree = "<group>"; };
|
||||||
|
838CD59F2179E79C000CBEA6 /* JYAddressPicker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JYAddressPicker.h; sourceTree = "<group>"; };
|
||||||
|
838CD5A02179E79C000CBEA6 /* city.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = city.json; sourceTree = "<group>"; };
|
||||||
|
838CD5A12179E79C000CBEA6 /* JYAddressPicker.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JYAddressPicker.m; sourceTree = "<group>"; };
|
||||||
83901142214E04D1004CA790 /* ApiRequestConfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ApiRequestConfig.h; sourceTree = "<group>"; };
|
83901142214E04D1004CA790 /* ApiRequestConfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ApiRequestConfig.h; sourceTree = "<group>"; };
|
||||||
83901144214E20B1004CA790 /* LYSDatePickerTypeDayAndTimeDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LYSDatePickerTypeDayAndTimeDelegate.h; sourceTree = "<group>"; };
|
83901144214E20B1004CA790 /* LYSDatePickerTypeDayAndTimeDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LYSDatePickerTypeDayAndTimeDelegate.h; sourceTree = "<group>"; };
|
||||||
83901145214E20B1004CA790 /* LYSDateContentView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LYSDateContentView.m; sourceTree = "<group>"; };
|
83901145214E20B1004CA790 /* LYSDateContentView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LYSDateContentView.m; sourceTree = "<group>"; };
|
||||||
@@ -675,6 +690,7 @@
|
|||||||
83C78A182159D74D0083DDD9 /* UIImage+LogoQrCode.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIImage+LogoQrCode.m"; sourceTree = "<group>"; };
|
83C78A182159D74D0083DDD9 /* UIImage+LogoQrCode.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIImage+LogoQrCode.m"; sourceTree = "<group>"; };
|
||||||
83C78A1A2159DD920083DDD9 /* UIImage+ShotImage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "UIImage+ShotImage.h"; sourceTree = "<group>"; };
|
83C78A1A2159DD920083DDD9 /* UIImage+ShotImage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "UIImage+ShotImage.h"; sourceTree = "<group>"; };
|
||||||
83C78A1B2159DD920083DDD9 /* UIImage+ShotImage.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIImage+ShotImage.m"; sourceTree = "<group>"; };
|
83C78A1B2159DD920083DDD9 /* UIImage+ShotImage.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIImage+ShotImage.m"; sourceTree = "<group>"; };
|
||||||
|
83D0B92B216C5A80006B77DC /* ogg_btn.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = ogg_btn.mp3; sourceTree = "<group>"; };
|
||||||
83D3832B215A2CF5009E8669 /* MaskHistryRecord.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MaskHistryRecord.h; sourceTree = "<group>"; };
|
83D3832B215A2CF5009E8669 /* MaskHistryRecord.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MaskHistryRecord.h; sourceTree = "<group>"; };
|
||||||
83D3832C215A2CF5009E8669 /* MaskHistryRecord.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MaskHistryRecord.m; sourceTree = "<group>"; };
|
83D3832C215A2CF5009E8669 /* MaskHistryRecord.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MaskHistryRecord.m; sourceTree = "<group>"; };
|
||||||
83E40B2D21218BA0008149C4 /* GiGaUserViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaUserViewController.h; sourceTree = "<group>"; };
|
83E40B2D21218BA0008149C4 /* GiGaUserViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiGaUserViewController.h; sourceTree = "<group>"; };
|
||||||
@@ -732,14 +748,22 @@
|
|||||||
name = Pods;
|
name = Pods;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
83276184216F29A800C6216C /* LXCustomActionsheet */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
83276185216F29A800C6216C /* LXCustomActionSheet.m */,
|
||||||
|
83276186216F29A800C6216C /* LXCustomActionSheet.h */,
|
||||||
|
);
|
||||||
|
path = LXCustomActionsheet;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
83346AC8212BD4160054D597 /* Source */ = {
|
83346AC8212BD4160054D597 /* Source */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
83D0B92B216C5A80006B77DC /* ogg_btn.mp3 */,
|
||||||
8338F6B02142182100B4780B /* MaskTime.png */,
|
8338F6B02142182100B4780B /* MaskTime.png */,
|
||||||
8342D9FC2131150200D16B1D /* 4481.wav */,
|
8342D9FC2131150200D16B1D /* 4481.wav */,
|
||||||
838388D92130046D00D14C53 /* emojizone.mp4 */,
|
|
||||||
838388C3212F934400D14C53 /* pomodoSound.m4a */,
|
838388C3212F934400D14C53 /* pomodoSound.m4a */,
|
||||||
83346AD0212BF5B70054D597 /* useragreement.html */,
|
|
||||||
);
|
);
|
||||||
path = Source;
|
path = Source;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -753,17 +777,6 @@
|
|||||||
path = CustomSwitch;
|
path = CustomSwitch;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
833DE8E02150169F009D4329 /* JYAddressPicker */ = {
|
|
||||||
isa = PBXGroup;
|
|
||||||
children = (
|
|
||||||
8376B81F2154913E00AB79F8 /* city.json */,
|
|
||||||
833DE8E12150169F009D4329 /* JYAddressPicker.h */,
|
|
||||||
833DE8E32150169F009D4329 /* JYAddressPicker.m */,
|
|
||||||
);
|
|
||||||
name = JYAddressPicker;
|
|
||||||
path = ../../../../JYAddressPicker;
|
|
||||||
sourceTree = "<group>";
|
|
||||||
};
|
|
||||||
8340BF9F213E6080008F22E4 /* GIGAMBHUDHelper */ = {
|
8340BF9F213E6080008F22E4 /* GIGAMBHUDHelper */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@@ -786,8 +799,9 @@
|
|||||||
8340BFAC213E7374008F22E4 /* Views */ = {
|
8340BFAC213E7374008F22E4 /* Views */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
838CD59E2179E79C000CBEA6 /* JYAddressPicker */,
|
||||||
|
83276184216F29A800C6216C /* LXCustomActionsheet */,
|
||||||
8382DFC021564A1F00BBA5A5 /* SJPhotoPicker */,
|
8382DFC021564A1F00BBA5A5 /* SJPhotoPicker */,
|
||||||
833DE8E02150169F009D4329 /* JYAddressPicker */,
|
|
||||||
83901143214E20B1004CA790 /* LYSDatePickerController */,
|
83901143214E20B1004CA790 /* LYSDatePickerController */,
|
||||||
8338F6B62142504E00B4780B /* CustomSwitch */,
|
8338F6B62142504E00B4780B /* CustomSwitch */,
|
||||||
8340BFAD213E739D008F22E4 /* GiGaNoNetWorkView.h */,
|
8340BFAD213E739D008F22E4 /* GiGaNoNetWorkView.h */,
|
||||||
@@ -862,6 +876,8 @@
|
|||||||
8376B8352154C74300AB79F8 /* ShareViewController.m */,
|
8376B8352154C74300AB79F8 /* ShareViewController.m */,
|
||||||
834DA5A3215F5F3B003FC4C6 /* ShareViewSystemImageHelper.h */,
|
834DA5A3215F5F3B003FC4C6 /* ShareViewSystemImageHelper.h */,
|
||||||
834DA5A4215F5F3B003FC4C6 /* ShareViewSystemImageHelper.m */,
|
834DA5A4215F5F3B003FC4C6 /* ShareViewSystemImageHelper.m */,
|
||||||
|
83379D0C21703CC100986278 /* GIGaSharePageViewController.h */,
|
||||||
|
83379D0D21703CC100986278 /* GIGaSharePageViewController.m */,
|
||||||
);
|
);
|
||||||
path = Controller;
|
path = Controller;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -875,6 +891,8 @@
|
|||||||
834415F2215B5F8200A6D906 /* GiGaShareModel.m */,
|
834415F2215B5F8200A6D906 /* GiGaShareModel.m */,
|
||||||
834DA5A6215F5FE0003FC4C6 /* ShareCustomIamgeModel.h */,
|
834DA5A6215F5FE0003FC4C6 /* ShareCustomIamgeModel.h */,
|
||||||
834DA5A7215F5FE0003FC4C6 /* ShareCustomIamgeModel.m */,
|
834DA5A7215F5FE0003FC4C6 /* ShareCustomIamgeModel.m */,
|
||||||
|
83379D09217033A800986278 /* GiGaLoaclImageModel.h */,
|
||||||
|
83379D0A217033A800986278 /* GiGaLoaclImageModel.m */,
|
||||||
);
|
);
|
||||||
path = Model;
|
path = Model;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -894,6 +912,10 @@
|
|||||||
83BFAE7A213D3F3A004EF801 /* MaskTimeCircularProgressView.m */,
|
83BFAE7A213D3F3A004EF801 /* MaskTimeCircularProgressView.m */,
|
||||||
834415F4215B89A300A6D906 /* MaskTimeTopAnimationView.h */,
|
834415F4215B89A300A6D906 /* MaskTimeTopAnimationView.h */,
|
||||||
834415F5215B89A300A6D906 /* MaskTimeTopAnimationView.m */,
|
834415F5215B89A300A6D906 /* MaskTimeTopAnimationView.m */,
|
||||||
|
835A0EAA216AF03C00ABAB1C /* GiGaPageControl.h */,
|
||||||
|
835A0EAB216AF03C00ABAB1C /* GiGaPageControl.m */,
|
||||||
|
835A0EAD216AFDC300ABAB1C /* LXPageControl.h */,
|
||||||
|
835A0EAE216AFDC300ABAB1C /* LXPageControl.m */,
|
||||||
);
|
);
|
||||||
path = View;
|
path = View;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -951,6 +973,10 @@
|
|||||||
8361B3C8212155C200238FEB /* GIGA */ = {
|
8361B3C8212155C200238FEB /* GIGA */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
83319C832174376C005EF726 /* AppDelegate+GiGaConfig.h */,
|
||||||
|
83319C822174376C005EF726 /* AppDelegate+GiGaConfig.m */,
|
||||||
|
83319C842174376C005EF726 /* AppDelegate+ThirdParty.h */,
|
||||||
|
83319C812174376B005EF726 /* AppDelegate+ThirdParty.m */,
|
||||||
835060A3212D2321007E6220 /* GIGA.entitlements */,
|
835060A3212D2321007E6220 /* GIGA.entitlements */,
|
||||||
8361B3FF21215C9D00238FEB /* Modules */,
|
8361B3FF21215C9D00238FEB /* Modules */,
|
||||||
8361B3FE21215C8A00238FEB /* Category */,
|
8361B3FE21215C8A00238FEB /* Category */,
|
||||||
@@ -958,10 +984,6 @@
|
|||||||
8361B3FC21215C7400238FEB /* Common */,
|
8361B3FC21215C7400238FEB /* Common */,
|
||||||
8361B3C9212155C200238FEB /* AppDelegate.h */,
|
8361B3C9212155C200238FEB /* AppDelegate.h */,
|
||||||
8361B3CA212155C200238FEB /* AppDelegate.m */,
|
8361B3CA212155C200238FEB /* AppDelegate.m */,
|
||||||
8361B40921217B2100238FEB /* AppDelegate+GiGaConfig.h */,
|
|
||||||
8361B40A21217B2100238FEB /* AppDelegate+GiGaConfig.m */,
|
|
||||||
8349585A212511040064DB6C /* AppDelegate+ThirdParty.h */,
|
|
||||||
8349585B212511040064DB6C /* AppDelegate+ThirdParty.m */,
|
|
||||||
8361B3CC212155C200238FEB /* ViewController.h */,
|
8361B3CC212155C200238FEB /* ViewController.h */,
|
||||||
8361B3CD212155C200238FEB /* ViewController.m */,
|
8361B3CD212155C200238FEB /* ViewController.m */,
|
||||||
8361B3CF212155C200238FEB /* Main.storyboard */,
|
8361B3CF212155C200238FEB /* Main.storyboard */,
|
||||||
@@ -997,6 +1019,8 @@
|
|||||||
8361B3FC21215C7400238FEB /* Common */ = {
|
8361B3FC21215C7400238FEB /* Common */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
838CD5952179E11D000CBEA6 /* GIGaDateHelper.h */,
|
||||||
|
838CD5962179E11E000CBEA6 /* GIGaDateHelper.m */,
|
||||||
8340BFAC213E7374008F22E4 /* Views */,
|
8340BFAC213E7374008F22E4 /* Views */,
|
||||||
8340BF9F213E6080008F22E4 /* GIGAMBHUDHelper */,
|
8340BF9F213E6080008F22E4 /* GIGAMBHUDHelper */,
|
||||||
83928FFF2134F4230077D2E8 /* LXDanMuManager */,
|
83928FFF2134F4230077D2E8 /* LXDanMuManager */,
|
||||||
@@ -1523,6 +1547,17 @@
|
|||||||
path = userInfoView;
|
path = userInfoView;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
838CD59E2179E79C000CBEA6 /* JYAddressPicker */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
838CD59F2179E79C000CBEA6 /* JYAddressPicker.h */,
|
||||||
|
838CD5A02179E79C000CBEA6 /* city.json */,
|
||||||
|
838CD5A12179E79C000CBEA6 /* JYAddressPicker.m */,
|
||||||
|
);
|
||||||
|
name = JYAddressPicker;
|
||||||
|
path = "../../../../../MaskTime素材新/JYAddressPicker";
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
83901143214E20B1004CA790 /* LYSDatePickerController */ = {
|
83901143214E20B1004CA790 /* LYSDatePickerController */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@@ -1813,7 +1848,6 @@
|
|||||||
83C78A10215872F80083DDD9 /* MasHistoryFirstViewCell.xib in Resources */,
|
83C78A10215872F80083DDD9 /* MasHistoryFirstViewCell.xib in Resources */,
|
||||||
8361B3D6212155C300238FEB /* LaunchScreen.storyboard in Resources */,
|
8361B3D6212155C300238FEB /* LaunchScreen.storyboard in Resources */,
|
||||||
838762E3214B9F580039D241 /* GiGaUserSexViewCell.xib in Resources */,
|
838762E3214B9F580039D241 /* GiGaUserSexViewCell.xib in Resources */,
|
||||||
838388DA2130046D00D14C53 /* emojizone.mp4 in Resources */,
|
|
||||||
83A22720212AC8C100B3E75C /* GiGaUserLoginVC.xib in Resources */,
|
83A22720212AC8C100B3E75C /* GiGaUserLoginVC.xib in Resources */,
|
||||||
838762D4214B9D120039D241 /* GIGaUserInfoAvatorCell.xib in Resources */,
|
838762D4214B9D120039D241 /* GIGaUserInfoAvatorCell.xib in Resources */,
|
||||||
8382DFBA2156389200BBA5A5 /* GIGaFeedImagsCollectionCell.xib in Resources */,
|
8382DFBA2156389200BBA5A5 /* GIGaFeedImagsCollectionCell.xib in Resources */,
|
||||||
@@ -1823,9 +1857,9 @@
|
|||||||
83BFAE78213CDE91004EF801 /* GiGaSettingsViewCell.xib in Resources */,
|
83BFAE78213CDE91004EF801 /* GiGaSettingsViewCell.xib in Resources */,
|
||||||
8382DFA22155F68800BBA5A5 /* MaskActionSheetViewCell.xib in Resources */,
|
8382DFA22155F68800BBA5A5 /* MaskActionSheetViewCell.xib in Resources */,
|
||||||
83346AC1212BB50A0054D597 /* PassWordResetVC.xib in Resources */,
|
83346AC1212BB50A0054D597 /* PassWordResetVC.xib in Resources */,
|
||||||
|
83D0B92C216C5A80006B77DC /* ogg_btn.mp3 in Resources */,
|
||||||
83BDC0592147B89900E74E0D /* GiGaAnswerViewCell.xib in Resources */,
|
83BDC0592147B89900E74E0D /* GiGaAnswerViewCell.xib in Resources */,
|
||||||
8351473D215215C500B25A88 /* GiGAUserInfoCell.xib in Resources */,
|
8351473D215215C500B25A88 /* GiGAUserInfoCell.xib in Resources */,
|
||||||
83346AD1212BF5B70054D597 /* useragreement.html in Resources */,
|
|
||||||
8376B8332154A39200AB79F8 /* MaskTimeEndActionViewCell.xib in Resources */,
|
8376B8332154A39200AB79F8 /* MaskTimeEndActionViewCell.xib in Resources */,
|
||||||
838762D9214B9EF80039D241 /* GIGaUserIDViewCell.xib in Resources */,
|
838762D9214B9EF80039D241 /* GIGaUserIDViewCell.xib in Resources */,
|
||||||
838762E8214B9FA60039D241 /* GIGaUserCityViewCell.xib in Resources */,
|
838762E8214B9FA60039D241 /* GIGaUserCityViewCell.xib in Resources */,
|
||||||
@@ -1834,13 +1868,13 @@
|
|||||||
834BDA48215C7D10001E1DB7 /* InfoPlist.strings in Resources */,
|
834BDA48215C7D10001E1DB7 /* InfoPlist.strings in Resources */,
|
||||||
8382DFEF21564A1F00BBA5A5 /* photopicker_back.png in Resources */,
|
8382DFEF21564A1F00BBA5A5 /* photopicker_back.png in Resources */,
|
||||||
83BFAE68213CCF10004EF801 /* GiGaMineUserViewCell.xib in Resources */,
|
83BFAE68213CCF10004EF801 /* GiGaMineUserViewCell.xib in Resources */,
|
||||||
8376B8202154913E00AB79F8 /* city.json in Resources */,
|
|
||||||
8351474221521C2A00B25A88 /* GIGaChangePassVC.xib in Resources */,
|
8351474221521C2A00B25A88 /* GIGaChangePassVC.xib in Resources */,
|
||||||
8382DFAD215626CE00BBA5A5 /* GiGaFeedContentViewCell.xib in Resources */,
|
8382DFAD215626CE00BBA5A5 /* GiGaFeedContentViewCell.xib in Resources */,
|
||||||
8340BFA9213E65CA008F22E4 /* GIGACommonLocalizabe.strings in Resources */,
|
8340BFA9213E65CA008F22E4 /* GIGACommonLocalizabe.strings in Resources */,
|
||||||
83835BA8212E4748001480F2 /* MAssaageCenterCell.xib in Resources */,
|
83835BA8212E4748001480F2 /* MAssaageCenterCell.xib in Resources */,
|
||||||
8361B3D3212155C300238FEB /* Assets.xcassets in Resources */,
|
8361B3D3212155C300238FEB /* Assets.xcassets in Resources */,
|
||||||
8340BFA6213E6514008F22E4 /* Localizable.strings in Resources */,
|
8340BFA6213E6514008F22E4 /* Localizable.strings in Resources */,
|
||||||
|
838CD5A22179E79C000CBEA6 /* city.json in Resources */,
|
||||||
8361B3D1212155C200238FEB /* Main.storyboard in Resources */,
|
8361B3D1212155C200238FEB /* Main.storyboard in Resources */,
|
||||||
8376B8412154CEB200AB79F8 /* MaskShareTimeMidViewCell.xib in Resources */,
|
8376B8412154CEB200AB79F8 /* MaskShareTimeMidViewCell.xib in Resources */,
|
||||||
8340BFAB213E665D008F22E4 /* GIGAUserLocalizable.strings in Resources */,
|
8340BFAB213E665D008F22E4 /* GIGAUserLocalizable.strings in Resources */,
|
||||||
@@ -1951,13 +1985,13 @@
|
|||||||
isa = PBXSourcesBuildPhase;
|
isa = PBXSourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
|
83319C87217437E0005EF726 /* AppDelegate.m in Sources */,
|
||||||
835060AD212D4D0C007E6220 /* GiGaFileNanager.m in Sources */,
|
835060AD212D4D0C007E6220 /* GiGaFileNanager.m in Sources */,
|
||||||
8382DFF621564A1F00BBA5A5 /* SJPhotoPickerToolBar.m in Sources */,
|
8382DFF621564A1F00BBA5A5 /* SJPhotoPickerToolBar.m in Sources */,
|
||||||
83846441214A4BFF00F12B33 /* MaskTestResultVC.m in Sources */,
|
83846441214A4BFF00F12B33 /* MaskTestResultVC.m in Sources */,
|
||||||
83346AC5212BBC8C0054D597 /* GiGaRegistViewController.m in Sources */,
|
83346AC5212BBC8C0054D597 /* GiGaRegistViewController.m in Sources */,
|
||||||
83346AD7212C18F50054D597 /* GiGaAppGaurdVC.m in Sources */,
|
83346AD7212C18F50054D597 /* GiGaAppGaurdVC.m in Sources */,
|
||||||
8351474B21523B7400B25A88 /* GIGaUserChangeMobleCell.m in Sources */,
|
8351474B21523B7400B25A88 /* GIGaUserChangeMobleCell.m in Sources */,
|
||||||
8349585C212511040064DB6C /* AppDelegate+ThirdParty.m in Sources */,
|
|
||||||
83048481214F489000603CE7 /* GiGaUserJobViewCell.m in Sources */,
|
83048481214F489000603CE7 /* GiGaUserJobViewCell.m in Sources */,
|
||||||
8376B83B2154CE8C00AB79F8 /* MaskTimeShareViewCell.m in Sources */,
|
8376B83B2154CE8C00AB79F8 /* MaskTimeShareViewCell.m in Sources */,
|
||||||
83BFAE73213CDB58004EF801 /* GiSysSettingsVC.m in Sources */,
|
83BFAE73213CDB58004EF801 /* GiSysSettingsVC.m in Sources */,
|
||||||
@@ -1968,6 +2002,7 @@
|
|||||||
834415EF215B52EF00A6D906 /* MaskTestNODataViewCell.m in Sources */,
|
834415EF215B52EF00A6D906 /* MaskTestNODataViewCell.m in Sources */,
|
||||||
8382DFF321564A1F00BBA5A5 /* SJPreviewPhotoCell.m in Sources */,
|
8382DFF321564A1F00BBA5A5 /* SJPreviewPhotoCell.m in Sources */,
|
||||||
8314D2112133ABE500B458BF /* WeiIXinApiManager.m in Sources */,
|
8314D2112133ABE500B458BF /* WeiIXinApiManager.m in Sources */,
|
||||||
|
83379D0E21703CC100986278 /* GIGaSharePageViewController.m in Sources */,
|
||||||
83BDC0582147B89900E74E0D /* GiGaAnswerViewCell.m in Sources */,
|
83BDC0582147B89900E74E0D /* GiGaAnswerViewCell.m in Sources */,
|
||||||
83BC8A862148BE8A00820437 /* NYSliderPopover.m in Sources */,
|
83BC8A862148BE8A00820437 /* NYSliderPopover.m in Sources */,
|
||||||
83773FC52147A5CC0014EE4C /* MaskQuestionView.m in Sources */,
|
83773FC52147A5CC0014EE4C /* MaskQuestionView.m in Sources */,
|
||||||
@@ -1976,6 +2011,7 @@
|
|||||||
8361B4382121847600238FEB /* UINavigationBar+Custom.m in Sources */,
|
8361B4382121847600238FEB /* UINavigationBar+Custom.m in Sources */,
|
||||||
83BFAE6C213CD0E3004EF801 /* GiGaMineInfoViewCell.m in Sources */,
|
83BFAE6C213CD0E3004EF801 /* GiGaMineInfoViewCell.m in Sources */,
|
||||||
834DA5A8215F5FE0003FC4C6 /* ShareCustomIamgeModel.m in Sources */,
|
834DA5A8215F5FE0003FC4C6 /* ShareCustomIamgeModel.m in Sources */,
|
||||||
|
838CD5A32179E79C000CBEA6 /* JYAddressPicker.m in Sources */,
|
||||||
8376B8402154CEB200AB79F8 /* MaskShareTimeMidViewCell.m in Sources */,
|
8376B8402154CEB200AB79F8 /* MaskShareTimeMidViewCell.m in Sources */,
|
||||||
8390116B214E20B2004CA790 /* LYSDateContentView.m in Sources */,
|
8390116B214E20B2004CA790 /* LYSDateContentView.m in Sources */,
|
||||||
83BC8A872148BE8A00820437 /* NYPopover.m in Sources */,
|
83BC8A872148BE8A00820437 /* NYPopover.m in Sources */,
|
||||||
@@ -1987,6 +2023,7 @@
|
|||||||
83BC8A8A2148D28300820437 /* QustionAnswer.m in Sources */,
|
83BC8A8A2148D28300820437 /* QustionAnswer.m in Sources */,
|
||||||
8342FD7D2150F94600D141F4 /* AppVerionDescriptionVC.m in Sources */,
|
8342FD7D2150F94600D141F4 /* AppVerionDescriptionVC.m in Sources */,
|
||||||
8357ADC92123BFCA000816F2 /* GiGaUserManager.m in Sources */,
|
8357ADC92123BFCA000816F2 /* GiGaUserManager.m in Sources */,
|
||||||
|
83379D0B217033A800986278 /* GiGaLoaclImageModel.m in Sources */,
|
||||||
8390116F214E20B2004CA790 /* LYSDatePickerViewController.m in Sources */,
|
8390116F214E20B2004CA790 /* LYSDatePickerViewController.m in Sources */,
|
||||||
8351473C215215C500B25A88 /* GiGAUserInfoCell.m in Sources */,
|
8351473C215215C500B25A88 /* GiGAUserInfoCell.m in Sources */,
|
||||||
8384F0E821533528002C19F0 /* MaskResultPercentCell.m in Sources */,
|
8384F0E821533528002C19F0 /* MaskResultPercentCell.m in Sources */,
|
||||||
@@ -1994,6 +2031,7 @@
|
|||||||
83835BC3212E677C001480F2 /* GiGaQuestionVC.m in Sources */,
|
83835BC3212E677C001480F2 /* GiGaQuestionVC.m in Sources */,
|
||||||
8382DFB121562B0A00BBA5A5 /* GIGaFeedQQViewCell.m in Sources */,
|
8382DFB121562B0A00BBA5A5 /* GIGaFeedQQViewCell.m in Sources */,
|
||||||
83A2271F212AC8C100B3E75C /* GiGaUserLoginVC.m in Sources */,
|
83A2271F212AC8C100B3E75C /* GiGaUserLoginVC.m in Sources */,
|
||||||
|
835A0EAF216AFDC300ABAB1C /* LXPageControl.m in Sources */,
|
||||||
83901177214E20B2004CA790 /* LYSDatePickerTypeTimeDelegate.m in Sources */,
|
83901177214E20B2004CA790 /* LYSDatePickerTypeTimeDelegate.m in Sources */,
|
||||||
8382DFB521562C6600BBA5A5 /* GIGaFeedPhontosViewCell.m in Sources */,
|
8382DFB521562C6600BBA5A5 /* GIGaFeedPhontosViewCell.m in Sources */,
|
||||||
83346ACE212BD7830054D597 /* GiGaWebViewController.m in Sources */,
|
83346ACE212BD7830054D597 /* GiGaWebViewController.m in Sources */,
|
||||||
@@ -2029,10 +2067,12 @@
|
|||||||
835060A9212D38EE007E6220 /* GiGaStartAdView.m in Sources */,
|
835060A9212D38EE007E6220 /* GiGaStartAdView.m in Sources */,
|
||||||
83928FFA2134D8F60077D2E8 /* GiGaFlyingCommitInputView.m in Sources */,
|
83928FFA2134D8F60077D2E8 /* GiGaFlyingCommitInputView.m in Sources */,
|
||||||
8390116D214E20B2004CA790 /* LYSDateBaseViewController.m in Sources */,
|
8390116D214E20B2004CA790 /* LYSDateBaseViewController.m in Sources */,
|
||||||
|
835A0EAC216AF03C00ABAB1C /* GiGaPageControl.m in Sources */,
|
||||||
838388D3212FB7D700D14C53 /* JXTAlertController.m in Sources */,
|
838388D3212FB7D700D14C53 /* JXTAlertController.m in Sources */,
|
||||||
833DA7762122A62000A5C614 /* GiGaMaskTaskViewController.m in Sources */,
|
833DA7762122A62000A5C614 /* GiGaMaskTaskViewController.m in Sources */,
|
||||||
836EE5D7213645E300F0ABB2 /* GiGaBaseAPiRequest.m in Sources */,
|
836EE5D7213645E300F0ABB2 /* GiGaBaseAPiRequest.m in Sources */,
|
||||||
8376B8232154927300AB79F8 /* GIGaMaskShareViewController.m in Sources */,
|
8376B8232154927300AB79F8 /* GIGaMaskShareViewController.m in Sources */,
|
||||||
|
83319C852174376C005EF726 /* AppDelegate+ThirdParty.m in Sources */,
|
||||||
83773FBC214769230014EE4C /* ExercisesModel.m in Sources */,
|
83773FBC214769230014EE4C /* ExercisesModel.m in Sources */,
|
||||||
8384F0EE2153355A002C19F0 /* MaskResultShareViewCell.m in Sources */,
|
8384F0EE2153355A002C19F0 /* MaskResultShareViewCell.m in Sources */,
|
||||||
8376B8452154CEC800AB79F8 /* MaskShareBoootomViewCell.m in Sources */,
|
8376B8452154CEC800AB79F8 /* MaskShareBoootomViewCell.m in Sources */,
|
||||||
@@ -2044,7 +2084,6 @@
|
|||||||
83901179214E20B2004CA790 /* LYSDatePickerTypeBase.m in Sources */,
|
83901179214E20B2004CA790 /* LYSDatePickerTypeBase.m in Sources */,
|
||||||
835060A2212D1225007E6220 /* GiGaMeViewController.m in Sources */,
|
835060A2212D1225007E6220 /* GiGaMeViewController.m in Sources */,
|
||||||
83C78A192159D74D0083DDD9 /* UIImage+LogoQrCode.m in Sources */,
|
83C78A192159D74D0083DDD9 /* UIImage+LogoQrCode.m in Sources */,
|
||||||
8361B3CB212155C200238FEB /* AppDelegate.m in Sources */,
|
|
||||||
8382DFB92156389200BBA5A5 /* GIGaFeedImagsCollectionCell.m in Sources */,
|
8382DFB92156389200BBA5A5 /* GIGaFeedImagsCollectionCell.m in Sources */,
|
||||||
8351474621521CC500B25A88 /* GiGaChangePhoneNumberVC.m in Sources */,
|
8351474621521CC500B25A88 /* GiGaChangePhoneNumberVC.m in Sources */,
|
||||||
838388C8212F9C4200D14C53 /* GiGaLocalNotificationManager.m in Sources */,
|
838388C8212F9C4200D14C53 /* GiGaLocalNotificationManager.m in Sources */,
|
||||||
@@ -2062,6 +2101,7 @@
|
|||||||
8357ADD32123C7C6000816F2 /* GiGaAPIResult.m in Sources */,
|
8357ADD32123C7C6000816F2 /* GiGaAPIResult.m in Sources */,
|
||||||
8340BF9E213E3846008F22E4 /* SHineLabel.m in Sources */,
|
8340BF9E213E3846008F22E4 /* SHineLabel.m in Sources */,
|
||||||
8342FD862150FD5200D141F4 /* VersionModel.m in Sources */,
|
8342FD862150FD5200D141F4 /* VersionModel.m in Sources */,
|
||||||
|
838CD5972179E11E000CBEA6 /* GIGaDateHelper.m in Sources */,
|
||||||
838762D3214B9D120039D241 /* GIGaUserInfoAvatorCell.m in Sources */,
|
838762D3214B9D120039D241 /* GIGaUserInfoAvatorCell.m in Sources */,
|
||||||
8361B4352121836700238FEB /* GiGaBaseNavViewController.m in Sources */,
|
8361B4352121836700238FEB /* GiGaBaseNavViewController.m in Sources */,
|
||||||
835060B3212D54C2007E6220 /* GiGaAdDetailViewController.m in Sources */,
|
835060B3212D54C2007E6220 /* GiGaAdDetailViewController.m in Sources */,
|
||||||
@@ -2076,7 +2116,6 @@
|
|||||||
8382DFEB21564A1F00BBA5A5 /* SJPreviewPhotoController.m in Sources */,
|
8382DFEB21564A1F00BBA5A5 /* SJPreviewPhotoController.m in Sources */,
|
||||||
8376B81E2154897700AB79F8 /* GIGaUserFileHelper.m in Sources */,
|
8376B81E2154897700AB79F8 /* GIGaUserFileHelper.m in Sources */,
|
||||||
8376B8362154C74300AB79F8 /* ShareViewController.m in Sources */,
|
8376B8362154C74300AB79F8 /* ShareViewController.m in Sources */,
|
||||||
833DE8E52150169F009D4329 /* JYAddressPicker.m in Sources */,
|
|
||||||
834127212152AEFB001DDB36 /* GIGaMaskTimeUseRecordVC.m in Sources */,
|
834127212152AEFB001DDB36 /* GIGaMaskTimeUseRecordVC.m in Sources */,
|
||||||
83901171214E20B2004CA790 /* LYSDatePickerLabel.m in Sources */,
|
83901171214E20B2004CA790 /* LYSDatePickerLabel.m in Sources */,
|
||||||
83C78A14215873170083DDD9 /* MaskHistoryListViewCell.m in Sources */,
|
83C78A14215873170083DDD9 /* MaskHistoryListViewCell.m in Sources */,
|
||||||
@@ -2086,12 +2125,12 @@
|
|||||||
83E40B2F21218BA0008149C4 /* GiGaUserViewController.m in Sources */,
|
83E40B2F21218BA0008149C4 /* GiGaUserViewController.m in Sources */,
|
||||||
8382DFE721564A1F00BBA5A5 /* SJPhotoPicker.m in Sources */,
|
8382DFE721564A1F00BBA5A5 /* SJPhotoPicker.m in Sources */,
|
||||||
83901170214E20B2004CA790 /* LYSDateHeaderViewController.m in Sources */,
|
83901170214E20B2004CA790 /* LYSDateHeaderViewController.m in Sources */,
|
||||||
835060A5212D3536007E6220 /* AppDelegate+GiGaConfig.m in Sources */,
|
|
||||||
835147312151E4EF00B25A88 /* GIGaAboutUsVC.m in Sources */,
|
835147312151E4EF00B25A88 /* GIGaAboutUsVC.m in Sources */,
|
||||||
8376B8282154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.m in Sources */,
|
8376B8282154A0A200AB79F8 /* MaskTimeEndViewImgaeCell.m in Sources */,
|
||||||
83901174214E20B2004CA790 /* LYSDateIndicatorViewController.m in Sources */,
|
83901174214E20B2004CA790 /* LYSDateIndicatorViewController.m in Sources */,
|
||||||
8390117B214E20B2004CA790 /* LYSDatePickerHeaderView.m in Sources */,
|
8390117B214E20B2004CA790 /* LYSDatePickerHeaderView.m in Sources */,
|
||||||
838762E7214B9FA60039D241 /* GIGaUserCityViewCell.m in Sources */,
|
838762E7214B9FA60039D241 /* GIGaUserCityViewCell.m in Sources */,
|
||||||
|
83319C862174376C005EF726 /* AppDelegate+GiGaConfig.m in Sources */,
|
||||||
8342FD822150FA1500D141F4 /* AppVersionDescCell.m in Sources */,
|
8342FD822150FA1500D141F4 /* AppVersionDescCell.m in Sources */,
|
||||||
834DA5AB215F6840003FC4C6 /* JobModel.m in Sources */,
|
834DA5AB215F6840003FC4C6 /* JobModel.m in Sources */,
|
||||||
83BFAE77213CDE91004EF801 /* GiGaSettingsViewCell.m in Sources */,
|
83BFAE77213CDE91004EF801 /* GiGaSettingsViewCell.m in Sources */,
|
||||||
@@ -2107,6 +2146,7 @@
|
|||||||
83A22712212A9EA900B3E75C /* UIView+Sizes.m in Sources */,
|
83A22712212A9EA900B3E75C /* UIView+Sizes.m in Sources */,
|
||||||
839290092134F4C40077D2E8 /* GiGaFlingCommitVC.m in Sources */,
|
839290092134F4C40077D2E8 /* GiGaFlingCommitVC.m in Sources */,
|
||||||
834415EA215B4E6F00A6D906 /* HistoryNoDataViewCell.m in Sources */,
|
834415EA215B4E6F00A6D906 /* HistoryNoDataViewCell.m in Sources */,
|
||||||
|
83276187216F29A800C6216C /* LXCustomActionSheet.m in Sources */,
|
||||||
83BFAE70213CDB29004EF801 /* GiMaskTimeHistoryVC.m in Sources */,
|
83BFAE70213CDB29004EF801 /* GiMaskTimeHistoryVC.m in Sources */,
|
||||||
8382DFEA21564A1F00BBA5A5 /* SJPhotoAlbumsController.m in Sources */,
|
8382DFEA21564A1F00BBA5A5 /* SJPhotoAlbumsController.m in Sources */,
|
||||||
83A22718212ABDFF00B3E75C /* GiGaBlockButton.m in Sources */,
|
83A22718212ABDFF00B3E75C /* GiGaBlockButton.m in Sources */,
|
||||||
@@ -2306,10 +2346,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = "$(inherited)";
|
||||||
"$(inherited)",
|
|
||||||
"$(PROJECT_DIR)/GIGA/Common/libs/ZbarSDK/ZBarSDK",
|
|
||||||
);
|
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.gigamask.ios;
|
PRODUCT_BUNDLE_IDENTIFIER = com.gigamask.ios;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
PROVISIONING_PROFILE = "";
|
PROVISIONING_PROFILE = "";
|
||||||
@@ -2340,10 +2377,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = "$(inherited)";
|
||||||
"$(inherited)",
|
|
||||||
"$(PROJECT_DIR)/GIGA/Common/libs/ZbarSDK/ZBarSDK",
|
|
||||||
);
|
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.gigamask.ios;
|
PRODUCT_BUNDLE_IDENTIFIER = com.gigamask.ios;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
PROVISIONING_PROFILE = "";
|
PROVISIONING_PROFILE = "";
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
//
|
|
||||||
// AppDelegate+Config.h
|
|
||||||
// GIGA
|
|
||||||
//
|
|
||||||
// Created by lianxiang on 2018/8/13.
|
|
||||||
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
|
||||||
//
|
|
||||||
|
|
||||||
#import "AppDelegate.h"
|
|
||||||
|
|
||||||
@interface AppDelegate ()
|
|
||||||
|
|
||||||
@end
|
|
||||||
@@ -90,6 +90,7 @@
|
|||||||
|
|
||||||
-(void)creatAdView{
|
-(void)creatAdView{
|
||||||
|
|
||||||
|
|
||||||
GiGaStartAdView *startadview = [[GiGaStartAdView alloc] initWithFrame:self.window.bounds];
|
GiGaStartAdView *startadview = [[GiGaStartAdView alloc] initWithFrame:self.window.bounds];
|
||||||
[startadview show];
|
[startadview show];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,8 +27,8 @@
|
|||||||
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
|
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
|
||||||
// Override point for customization after application launch.
|
// Override point for customization after application launch.
|
||||||
//[NSThread sleepForTimeInterval:1];//延迟启动
|
//[NSThread sleepForTimeInterval:1];//延迟启动
|
||||||
|
self.isMasking = [GiGaUserDefault isMasking];
|
||||||
_isMasking = NO;
|
//_isMasking = NO;
|
||||||
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
|
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
|
||||||
[self registLocalNotification];
|
[self registLocalNotification];
|
||||||
[self configThridPartyWithOptions:launchOptions];
|
[self configThridPartyWithOptions:launchOptions];
|
||||||
@@ -51,6 +51,39 @@
|
|||||||
[GiGaBaseAPiRequest userTokenTimeOutGologinFromVC:self.window.rootViewController];
|
[GiGaBaseAPiRequest userTokenTimeOutGologinFromVC:self.window.rootViewController];
|
||||||
}
|
}
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
}else{
|
||||||
|
|
||||||
|
// 未登录同步默认面膜时间
|
||||||
|
GiGaBaseAPiRequest *api = [GiGaBaseAPiRequest initWithRequestPath:kUserDefaultMaskTime method:RequestPostMethod parms:nil];
|
||||||
|
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
||||||
|
if (result.success) {
|
||||||
|
|
||||||
|
float minute = [result.dic[@"minute"] floatValue];
|
||||||
|
if (minute !=0) {
|
||||||
|
|
||||||
|
[GiGaUserDefault savaMaskeTime:minute*60];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
//用户关闭后台权限 提醒开启
|
||||||
|
if ([[UIApplication sharedApplication] backgroundRefreshStatus] != UIBackgroundRefreshStatusAvailable ) {
|
||||||
|
[self.window.rootViewController jxt_showAlertWithTitle:@"温馨提示" message:@"为保证您正常使用面膜时间,需要您开启后台刷新,请在 设置->面膜时间->应用程序后台刷新 开启" appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
||||||
|
alertMaker.addActionCancelTitle(@"下次");
|
||||||
|
alertMaker.addActionDefaultTitle(@"去开启");
|
||||||
|
|
||||||
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
|
if (buttonIndex == 1) {
|
||||||
|
|
||||||
|
NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
|
||||||
|
if ([[UIApplication sharedApplication] canOpenURL:url]) {
|
||||||
|
[[UIApplication sharedApplication] openURL:url];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
return YES;
|
return YES;
|
||||||
@@ -105,12 +138,15 @@
|
|||||||
|
|
||||||
- (void)applicationWillTerminate:(UIApplication *)application {
|
- (void)applicationWillTerminate:(UIApplication *)application {
|
||||||
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
|
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
|
||||||
|
[GiGaUserDefault saveisMaskingflag:_isMasking];
|
||||||
//app 挂起 面膜时间未结束 将发送本地通知提醒
|
//app 挂起 面膜时间未结束 发送本地通知提醒
|
||||||
if (_isMasking) {
|
if (_isMasking) {
|
||||||
|
|
||||||
// [[GiGaLocalNotificationManager localNotifiationCenter] sendLocalNotification:@"闹钟提醒!" fireTimeInterval:2 alertAction:@"面膜时间已添加闹钟提醒!" withIdentifier:kLOCALNotifiID_APPTERMINAL];
|
// [[GiGaLocalNotificationManager localNotifiationCenter] sendLocalNotification:@"闹钟提醒!" fireTimeInterval:2 alertAction:@"面膜时间已添加闹钟提醒!" withIdentifier:kLOCALNotifiID_APPTERMINAL];
|
||||||
|
//进程结束 长期保持后台前提下 用户主动挂起 取消本地推送。
|
||||||
|
// [[GiGaLocalNotificationManager localNotifiationCenter] cancelAllLocalNoitification];
|
||||||
}
|
}
|
||||||
|
[[GiGaLocalNotificationManager localNotifiationCenter] cancelAllLocalNoitification];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
"images" : [
|
"images" : [
|
||||||
{
|
{
|
||||||
"idiom" : "universal",
|
"idiom" : "universal",
|
||||||
"filename" : "appgaurd_moon.png",
|
|
||||||
"scale" : "1x"
|
"scale" : "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -12,7 +11,6 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"idiom" : "universal",
|
"idiom" : "universal",
|
||||||
"filename" : "appgaurd_moon@3x.png",
|
|
||||||
"scale" : "3x"
|
"scale" : "3x"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 63 KiB |
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "page2_img.png",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "page2_img@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "page2_img@3x.png",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 134 KiB |
|
After Width: | Height: | Size: 240 KiB |
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "page2_women@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 188 KiB |
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "page3_img.png",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "page3_img@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "page3_img@3x.png",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 75 KiB |
|
After Width: | Height: | Size: 213 KiB |
|
After Width: | Height: | Size: 407 KiB |
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "page3_woman@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 84 KiB |
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "page_logo@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 5.6 KiB |
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "pagecontrol_current@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 296 B |
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "pagecontrol_def@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 264 B |
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "bg_off@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "bg_on@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 733 B |
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"filename" : "img_product@2x.png",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"version" : 1,
|
||||||
|
"author" : "xcode"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 60 KiB |
@@ -11,6 +11,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"idiom" : "universal",
|
"idiom" : "universal",
|
||||||
|
"filename" : "share_minute@3x.png",
|
||||||
"scale" : "3x"
|
"scale" : "3x"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
|
After Width: | Height: | Size: 20 KiB |
@@ -0,0 +1,25 @@
|
|||||||
|
//
|
||||||
|
// GIGaDateHelper.h
|
||||||
|
// MasKTimeCountTime
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/19.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface GIGaDateHelper : NSObject
|
||||||
|
|
||||||
|
+(NSString *)getNowTimeTimestamp2;
|
||||||
|
+(NSDate *)getStartDate;
|
||||||
|
+(void)saveSatrtDate;
|
||||||
|
+(int)getTimebySubtracting:(NSDate*)Date1 andDate2:(NSDate*)Date2;
|
||||||
|
+(void)saveisMaskingflag:(BOOL)masking;
|
||||||
|
+(BOOL)isMasking;
|
||||||
|
+(void)removeStartDate;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
||||||
@@ -0,0 +1,73 @@
|
|||||||
|
//
|
||||||
|
// GIGaDateHelper.m
|
||||||
|
// MasKTimeCountTime
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/19.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "GIGaDateHelper.h"
|
||||||
|
|
||||||
|
@implementation GIGaDateHelper
|
||||||
|
|
||||||
|
//获取当前时间 单位秒
|
||||||
|
+(NSString *)getNowTimeTimestamp2{
|
||||||
|
|
||||||
|
NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];
|
||||||
|
NSLog(@"date :%@",dat);
|
||||||
|
|
||||||
|
NSTimeInterval a=[dat timeIntervalSince1970];
|
||||||
|
NSString*timeString = [NSString stringWithFormat:@"%0.f", a];
|
||||||
|
//转为字符型 ;
|
||||||
|
return timeString;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
+(NSDate *)getStartDate{
|
||||||
|
|
||||||
|
NSDate *start = [[NSUserDefaults standardUserDefaults] objectForKey:@"start"];
|
||||||
|
|
||||||
|
return start;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
+(void )saveSatrtDate{
|
||||||
|
|
||||||
|
NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];
|
||||||
|
[[NSUserDefaults standardUserDefaults] setObject:dat forKey:@"start"];
|
||||||
|
[[NSUserDefaults standardUserDefaults] synchronize];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
+(void)removeStartDate{
|
||||||
|
|
||||||
|
[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"start"];
|
||||||
|
[[NSUserDefaults standardUserDefaults] synchronize];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
+(int)getTimebySubtracting:(NSDate*)Date1 andDate2:(NSDate*)Date2
|
||||||
|
{
|
||||||
|
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian];
|
||||||
|
unsigned int unitFlags = NSCalendarUnitSecond;
|
||||||
|
|
||||||
|
NSDateComponents *comps = [gregorian components: unitFlags fromDate:Date1 toDate:Date2 options:0];
|
||||||
|
|
||||||
|
int seconds = (int)[comps second];
|
||||||
|
|
||||||
|
return seconds;
|
||||||
|
}
|
||||||
|
|
||||||
|
+(void)saveisMaskingflag:(BOOL)masking{
|
||||||
|
[[NSUserDefaults standardUserDefaults] setBool:masking forKey:@"isMasking"];
|
||||||
|
[[NSUserDefaults standardUserDefaults] synchronize];
|
||||||
|
}
|
||||||
|
|
||||||
|
+(BOOL)isMasking{
|
||||||
|
|
||||||
|
BOOL ismasking = [[NSUserDefaults standardUserDefaults] boolForKey:@"isMasking"];
|
||||||
|
return ismasking;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
||||||
@@ -7,7 +7,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
@interface GiGaHelper : NSObject
|
@interface GiGaHelper : NSObject
|
||||||
/**
|
/**
|
||||||
* 获取当前时间 格式 yyyy-MM-dd hh:mm:ss
|
* 获取当前时间 格式 yyyy-MM-dd hh:mm:ss
|
||||||
@@ -70,4 +70,6 @@
|
|||||||
|
|
||||||
+(NSString*)dictionaryToJson:(NSDictionary *)dic;
|
+(NSString*)dictionaryToJson:(NSDictionary *)dic;
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "GiGaHelper.h"
|
#import "GiGaHelper.h"
|
||||||
|
#import <Photos/Photos.h>
|
||||||
@implementation GiGaHelper
|
@implementation GiGaHelper
|
||||||
|
|
||||||
+(NSString *) getNowTimeString{
|
+(NSString *) getNowTimeString{
|
||||||
@@ -294,4 +294,5 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -27,12 +27,12 @@
|
|||||||
-(void)sendLocalNotification:(NSString *)alertBoday fireTimeInterval:(NSTimeInterval )timeInterval alertAction:(NSString *)alertAction withIdentifier:(NSString *)identifier;
|
-(void)sendLocalNotification:(NSString *)alertBoday fireTimeInterval:(NSTimeInterval )timeInterval alertAction:(NSString *)alertAction withIdentifier:(NSString *)identifier;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
删除当前程序注册的所有通知 ios 8 后 iOS10 前
|
删除当前程序注册的所有通知
|
||||||
*/
|
*/
|
||||||
-(void)cancelAllLocalNoitification;
|
-(void)cancelAllLocalNoitification;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
删除指定的通知,一般用于取消重复的通知或者还没有被调用的通知,先获取通知,再遍历根据条件去删除(条件是 UserInfo 的值,是发送通知时所携带的参数) ios 8 后 iOS10 前
|
删除指定的通知,一般用于取消重复的通知或者还没有被调用的通知,先获取通知,再遍历根据条件去删除(条件是 UserInfo 的值,是发送通知时所携带的参数)
|
||||||
*/
|
*/
|
||||||
-(void)cancelLocalNitificationByUserInfowithIdentifier:(NSString *)identifier;
|
-(void)cancelLocalNitificationByUserInfowithIdentifier:(NSString *)identifier;
|
||||||
|
|
||||||
@@ -41,7 +41,6 @@
|
|||||||
*/
|
*/
|
||||||
-(void)didResaveloaclNitification:(UILocalNotification *)localNitification;
|
-(void)didResaveloaclNitification:(UILocalNotification *)localNitification;
|
||||||
|
|
||||||
|
|
||||||
//处理通知。。
|
//处理通知。。
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -74,7 +74,7 @@
|
|||||||
|
|
||||||
if (@available(iOS 10.0, *)) {
|
if (@available(iOS 10.0, *)) {
|
||||||
|
|
||||||
[[UNUserNotificationCenter currentNotificationCenter] removeAllDeliveredNotifications];
|
[[UNUserNotificationCenter currentNotificationCenter] removeAllPendingNotificationRequests];
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
// Fallback on earlier versions
|
// Fallback on earlier versions
|
||||||
@@ -87,7 +87,7 @@
|
|||||||
-(void)cancelLocalNitificationByUserInfowithIdentifier:(NSString *)identifier{
|
-(void)cancelLocalNitificationByUserInfowithIdentifier:(NSString *)identifier{
|
||||||
|
|
||||||
if (@available(iOS 10.0, *)) {
|
if (@available(iOS 10.0, *)) {
|
||||||
[[UNUserNotificationCenter currentNotificationCenter] removeDeliveredNotificationsWithIdentifiers:@[identifier]];
|
[[UNUserNotificationCenter currentNotificationCenter] removePendingNotificationRequestsWithIdentifiers:@[identifier]];
|
||||||
} else {
|
} else {
|
||||||
// Fallback on earlier versions
|
// Fallback on earlier versions
|
||||||
NSArray *notifiArray = [[UIApplication sharedApplication] scheduledLocalNotifications];
|
NSArray *notifiArray = [[UIApplication sharedApplication] scheduledLocalNotifications];
|
||||||
@@ -125,7 +125,7 @@ API_AVAILABLE(ios(10.0)){
|
|||||||
// 判断为本地通知
|
// 判断为本地通知
|
||||||
NSLog(@"iOS10 前台 收到本地通知:{\\\\nbody:%@,\\\\ntitle:%@,\\\\nsubtitle:%@,\\\\nbadge:%@,\\\\nsound:%@,\\\\nuserInfo:%@\\\\n}",body,title,subtitle,badge,sound,userInfo);
|
NSLog(@"iOS10 前台 收到本地通知:{\\\\nbody:%@,\\\\ntitle:%@,\\\\nsubtitle:%@,\\\\nbadge:%@,\\\\nsound:%@,\\\\nuserInfo:%@\\\\n}",body,title,subtitle,badge,sound,userInfo);
|
||||||
|
|
||||||
[self showAlert:title message:body];
|
//[self showAlert:title message:body];
|
||||||
[center removeAllPendingNotificationRequests];
|
[center removeAllPendingNotificationRequests];
|
||||||
}
|
}
|
||||||
completionHandler(UNNotificationPresentationOptionBadge|UNNotificationPresentationOptionSound|UNNotificationPresentationOptionAlert);
|
completionHandler(UNNotificationPresentationOptionBadge|UNNotificationPresentationOptionSound|UNNotificationPresentationOptionAlert);
|
||||||
|
|||||||
@@ -69,5 +69,14 @@
|
|||||||
+(void)savaMaskeTime:(NSTimeInterval)time;
|
+(void)savaMaskeTime:(NSTimeInterval)time;
|
||||||
+(NSTimeInterval)getUserMaskeTime;
|
+(NSTimeInterval)getUserMaskeTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
记录是否测试过
|
||||||
|
*/
|
||||||
|
+(void)saveUserTestFlag:(BOOL)tested;
|
||||||
|
+(BOOL)isUserTest;
|
||||||
|
|
||||||
|
|
||||||
|
+(void)saveisMaskingflag:(BOOL)masking;
|
||||||
|
+(BOOL)isMasking;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -17,7 +17,8 @@ NSString *const kWeiXinUserInfo = @"WeiXinUserinfo";
|
|||||||
NSString *const kGiGaToken = @"GiGatoken";
|
NSString *const kGiGaToken = @"GiGatoken";
|
||||||
NSString *const kMaskeTime= @"userMaskeTime";
|
NSString *const kMaskeTime= @"userMaskeTime";
|
||||||
NSString *const kWeiXinCodeInfo = @"WeiXinCodeinfo";
|
NSString *const kWeiXinCodeInfo = @"WeiXinCodeinfo";
|
||||||
#define MASKTIME_DEFAULT 20;
|
NSString *const kShowUserTested = @"kShowUserTested";
|
||||||
|
#define MASKTIME_DEFAULT 17.5;
|
||||||
|
|
||||||
@implementation GiGaUserDefault
|
@implementation GiGaUserDefault
|
||||||
|
|
||||||
@@ -144,11 +145,37 @@ NSString *const kWeiXinCodeInfo = @"WeiXinCodeinfo";
|
|||||||
|
|
||||||
NSTimeInterval time = [UD_STADARDUD doubleForKey:kMaskeTime];
|
NSTimeInterval time = [UD_STADARDUD doubleForKey:kMaskeTime];
|
||||||
if (time == 0) {
|
if (time == 0) {
|
||||||
//默认15 分钟
|
//默认17.5 分钟 已改调用接口同步默认
|
||||||
time = 15 * 60;
|
time = 17.5 * 60;
|
||||||
//time = MASKTIME_DEFAULT;
|
//time = MASKTIME_DEFAULT;
|
||||||
}
|
}
|
||||||
|
//time = 10;
|
||||||
return time;
|
return time;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
+(void)saveUserTestFlag:(BOOL)tested{
|
||||||
|
|
||||||
|
[UD_STADARDUD setBool:tested forKey:kShowUserTested];
|
||||||
|
[UD_STADARDUD synchronize];
|
||||||
|
}
|
||||||
|
|
||||||
|
+(BOOL)isUserTest{
|
||||||
|
|
||||||
|
BOOL showedGaurd = [UD_STADARDUD boolForKey:kShowUserTested];
|
||||||
|
[UD_STADARDUD synchronize];
|
||||||
|
return showedGaurd;
|
||||||
|
}
|
||||||
|
|
||||||
|
+(void)saveisMaskingflag:(BOOL)masking{
|
||||||
|
[[NSUserDefaults standardUserDefaults] setBool:masking forKey:@"isMasking"];
|
||||||
|
[[NSUserDefaults standardUserDefaults] synchronize];
|
||||||
|
}
|
||||||
|
|
||||||
|
+(BOOL)isMasking{
|
||||||
|
|
||||||
|
BOOL ismasking = [[NSUserDefaults standardUserDefaults] boolForKey:@"isMasking"];
|
||||||
|
return ismasking;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ const static NSInteger GIGADB_USER_VER = 0;//当前数据库版本号
|
|||||||
}else{
|
}else{
|
||||||
|
|
||||||
if (errorCodeMsg) {
|
if (errorCodeMsg) {
|
||||||
errorCodeMsg(requst.resultDict);
|
errorCodeMsg(result.dic);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -96,6 +96,10 @@ const static NSInteger GIGADB_USER_VER = 0;//当前数据库版本号
|
|||||||
[_store putObject:_userArr withId:userTableId intoTable:GIGA_USER_TABLE];
|
[_store putObject:_userArr withId:userTableId intoTable:GIGA_USER_TABLE];
|
||||||
[GiGaUserDefault saveUserId:userTableId];
|
[GiGaUserDefault saveUserId:userTableId];
|
||||||
|
|
||||||
|
if (user.minute != 0) {
|
||||||
|
[GiGaUserDefault savaMaskeTime:user.minute * 60];
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//已登录
|
//已登录
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
* finishTimeStamp 结束的时间戳
|
* finishTimeStamp 结束的时间戳
|
||||||
*/
|
*/
|
||||||
-(void)countDownWithStratTimeStamp:(long)starTimeStamp finishTimeStamp:(long)finishTimeStamp completeBlock:(void (^)(NSInteger day,NSInteger hour,NSInteger minute,NSInteger second))completeBlock;
|
-(void)countDownWithStratTimeStamp:(long)starTimeStamp finishTimeStamp:(long)finishTimeStamp completeBlock:(void (^)(NSInteger day,NSInteger hour,NSInteger minute,NSInteger second))completeBlock;
|
||||||
|
-(void)countDownWithtimerInterval:(NSTimeInterval)timerInterval completeBlock:(void (^)(NSInteger day, NSInteger hour, NSInteger minute, NSInteger second))completeBlock;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 每秒走一次,回调block
|
* 每秒走一次,回调block
|
||||||
|
|||||||
@@ -54,6 +54,42 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-(void)countDownWithtimerInterval:(NSTimeInterval)timerInterval completeBlock:(void (^)(NSInteger, NSInteger, NSInteger, NSInteger))completeBlock{
|
||||||
|
|
||||||
|
if (_timer == nil) {
|
||||||
|
|
||||||
|
__block int timeout = timerInterval;
|
||||||
|
if (timeout !=0) {
|
||||||
|
|
||||||
|
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
|
||||||
|
_timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue);
|
||||||
|
dispatch_source_set_timer(_timer, dispatch_walltime(NULL, 0), 1.0*NSEC_PER_SEC, 0);//每秒执行
|
||||||
|
dispatch_source_set_event_handler(_timer, ^{
|
||||||
|
if (timeout<=0) {
|
||||||
|
//记时结束, 关闭
|
||||||
|
dispatch_source_cancel(self->_timer);
|
||||||
|
self->_timer = nil;
|
||||||
|
dispatch_async(dispatch_get_main_queue(), ^{
|
||||||
|
completeBlock(0,0,0,0);
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
int days = (int)(timeout/(3600*24));
|
||||||
|
int hours = (int)((timeout-days*24*3600)/3600);
|
||||||
|
int minute = (int)(timeout-days*24*3600-hours*3600)/60;
|
||||||
|
int second = timeout-days*24*3600-hours*3600-minute*60;
|
||||||
|
dispatch_async(dispatch_get_main_queue(), ^{
|
||||||
|
completeBlock(days,hours,minute,second);
|
||||||
|
});
|
||||||
|
timeout--;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
dispatch_resume(_timer);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
-(void)countDownWithPER_SECBlock:(void (^)(void))PER_SECBlock{
|
-(void)countDownWithPER_SECBlock:(void (^)(void))PER_SECBlock{
|
||||||
if (_timer==nil) {
|
if (_timer==nil) {
|
||||||
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
|
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
//
|
||||||
|
// LXCustomActionSheet.h
|
||||||
|
// CustomUISwitch
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/11.
|
||||||
|
// Copyright © 2018年 lian. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@interface LXCustomActionSheet : UIView
|
||||||
|
- (instancetype)initWithTitle:(NSString*)title
|
||||||
|
optionsArr:(NSArray*)optionsArr
|
||||||
|
cancelTitle:(NSString*)cancelTitle
|
||||||
|
selectedBlock:(void(^)(NSInteger))selectedBlock
|
||||||
|
cancelBlock:(void(^)(void))cancelBlock;
|
||||||
|
-(void)show;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,192 @@
|
|||||||
|
//
|
||||||
|
// LXCustomActionSheet.m
|
||||||
|
// CustomUISwitch
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/11.
|
||||||
|
// Copyright © 2018年 lian. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "LXCustomActionSheet.h"
|
||||||
|
#define Screen_Width [UIScreen mainScreen].bounds.size.width
|
||||||
|
#define Screen_height [UIScreen mainScreen].bounds.size.height
|
||||||
|
#define SPACE 10
|
||||||
|
@interface LXCustomActionSheet ()<UITableViewDelegate,UITableViewDataSource>
|
||||||
|
@property (nonatomic, strong) UIView *maskView;
|
||||||
|
@property (nonatomic, strong) UITableView *tableView;
|
||||||
|
@property (nonatomic, strong) NSArray *optionsArr;
|
||||||
|
@property (nonatomic, copy) NSString *title;
|
||||||
|
@property (nonatomic, copy) NSString *cancelTitle;
|
||||||
|
@property (nonatomic, strong) UIView *headView;
|
||||||
|
@property (nonatomic, copy) void(^selectedBlock)(NSInteger);
|
||||||
|
@property (nonatomic, copy) void(^cancelBlock)(void);
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation LXCustomActionSheet
|
||||||
|
|
||||||
|
|
||||||
|
- (instancetype)initWithTitle:(NSString*)title
|
||||||
|
optionsArr:(NSArray*)optionsArr
|
||||||
|
cancelTitle:(NSString*)cancelTitle
|
||||||
|
selectedBlock:(void(^)(NSInteger))selectedBlock
|
||||||
|
cancelBlock:(void(^)(void))cancelBlock{
|
||||||
|
if (self = [super init]) {
|
||||||
|
_title = title;
|
||||||
|
_optionsArr = optionsArr;
|
||||||
|
_cancelTitle = cancelTitle;
|
||||||
|
_selectedBlock = selectedBlock;
|
||||||
|
_cancelBlock = cancelBlock;
|
||||||
|
[self craetUI];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)craetUI {
|
||||||
|
self.frame = [UIScreen mainScreen].bounds;
|
||||||
|
[self addSubview:self.maskView];
|
||||||
|
[self addSubview:self.tableView];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UIView*)maskView {
|
||||||
|
if (!_maskView) {
|
||||||
|
_maskView = [[UIView alloc]initWithFrame:[UIScreen mainScreen].bounds];
|
||||||
|
_maskView.backgroundColor = [UIColor blackColor];
|
||||||
|
_maskView.alpha = .5;
|
||||||
|
_maskView.userInteractionEnabled = YES;
|
||||||
|
}
|
||||||
|
return _maskView;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UITableView *)tableView {
|
||||||
|
if (!_tableView) {
|
||||||
|
_tableView = [[UITableView alloc]initWithFrame:CGRectZero style:UITableViewStylePlain];
|
||||||
|
_tableView.delegate = self;
|
||||||
|
_tableView.dataSource = self;
|
||||||
|
_tableView.rowHeight = 44.0;
|
||||||
|
_tableView.bounces = NO;
|
||||||
|
_tableView.showsVerticalScrollIndicator = NO;
|
||||||
|
_tableView.backgroundColor = [UIColor clearColor];
|
||||||
|
_tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
|
||||||
|
|
||||||
|
UIView *tabHeader = [[UIView alloc] initWithFrame:CGRectMake(0, 0,Screen_Width, 50)];
|
||||||
|
tabHeader.backgroundColor = [UIColor whiteColor];
|
||||||
|
|
||||||
|
UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:
|
||||||
|
CGRectMake(0, 0, Screen_Width, 50) byRoundingCorners:
|
||||||
|
UIRectCornerTopLeft|UIRectCornerTopRight cornerRadii:
|
||||||
|
CGSizeMake(10, 10)];
|
||||||
|
CAShapeLayer *maskLayer = [[CAShapeLayer alloc]init];
|
||||||
|
maskLayer.frame = tabHeader.bounds;
|
||||||
|
maskLayer.path = maskPath.CGPath;
|
||||||
|
tabHeader.layer.mask = maskLayer;
|
||||||
|
|
||||||
|
UILabel *titleLabe = [[UILabel alloc] init];
|
||||||
|
titleLabe.frame = tabHeader.bounds;
|
||||||
|
titleLabe.textAlignment = NSTextAlignmentCenter;
|
||||||
|
titleLabe.text = self.title;
|
||||||
|
titleLabe.font = GIGA_TEXTFONTMEDIUM(15);
|
||||||
|
titleLabe.textColor = GIGA_MAIN_BGCOLOR;
|
||||||
|
[tabHeader addSubview:titleLabe];
|
||||||
|
UIView *lineView = [[UIView alloc] initWithFrame:CGRectMake(0, tabHeader.frame.size.height -0.5, Screen_Width, 0.5)];
|
||||||
|
lineView.backgroundColor = [UIColor colorWithRed:222/255.0f green:222/255.0f blue:222/255.0f alpha:1];
|
||||||
|
[tabHeader addSubview:lineView];
|
||||||
|
self.headView = tabHeader;
|
||||||
|
_tableView.tableHeaderView = self.headView;
|
||||||
|
|
||||||
|
// _tableView.separatorInset = UIEdgeInsetsMake(0, -50, 0, 0);
|
||||||
|
[_tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"Navi_Cell"];
|
||||||
|
}
|
||||||
|
return _tableView;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark TableView
|
||||||
|
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
|
||||||
|
return (section == 0)?_optionsArr.count:1;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||||
|
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Navi_Cell"];
|
||||||
|
cell.textLabel.font = GIGA_TEXTFONTMEDIUM(18);
|
||||||
|
cell.textLabel.textColor = GIGA_MAIN_BGCOLOR;
|
||||||
|
if (indexPath.section == 0) {
|
||||||
|
cell.textLabel.text = _optionsArr[indexPath.row];
|
||||||
|
UIView *lineView = [[UIView alloc] initWithFrame:CGRectMake(0,cell.frame.size.height - 0.5, Screen_Width, 0.5)];
|
||||||
|
lineView.backgroundColor = [UIColor colorWithRed:222/255.0f green:222/255.0f blue:222/255.0f alpha:1];
|
||||||
|
[cell.contentView addSubview:lineView];
|
||||||
|
|
||||||
|
} else {
|
||||||
|
cell.textLabel.text = _cancelTitle;
|
||||||
|
}
|
||||||
|
cell.textLabel.textAlignment = NSTextAlignmentCenter;
|
||||||
|
cell.selectionStyle = UITableViewCellSelectionStyleNone;
|
||||||
|
return cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||||
|
if (indexPath.section == 0) {
|
||||||
|
if (self.selectedBlock) {
|
||||||
|
self.selectedBlock(indexPath.row);
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
if (self.cancelBlock) {
|
||||||
|
self.cancelBlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
[self dismiss];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
|
||||||
|
if (section==0) {
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UIView*)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
|
||||||
|
UIView *footerView = [[UIView alloc] init];
|
||||||
|
footerView.backgroundColor = [UIColor colorWithRed:222/255.0f green:222/255.0f blue:222/255.0f alpha:1];
|
||||||
|
return footerView;
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)show{
|
||||||
|
[[UIApplication sharedApplication].keyWindow addSubview:self];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)layoutSubviews {
|
||||||
|
[super layoutSubviews];
|
||||||
|
[self showTab];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)showTab{
|
||||||
|
|
||||||
|
_tableView.frame = CGRectMake(0,Screen_height, Screen_Width, _tableView.rowHeight * (_optionsArr.count + 1) + 50 + 3);
|
||||||
|
[UIView animateWithDuration:.5 animations:^{
|
||||||
|
CGRect rect = self->_tableView.frame;
|
||||||
|
rect.origin.y -= self->_tableView.bounds.size.height;
|
||||||
|
self->_tableView.frame = rect;
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)dismiss {
|
||||||
|
|
||||||
|
[UIView animateWithDuration:.5 animations:^{
|
||||||
|
CGRect rect = self->_tableView.frame;
|
||||||
|
rect.origin.y += self->_tableView.bounds.size.height;
|
||||||
|
self->_tableView.frame = rect;
|
||||||
|
} completion:^(BOOL finished) {
|
||||||
|
[self removeFromSuperview];
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
|
||||||
|
if (self.cancelBlock) {
|
||||||
|
self.cancelBlock();
|
||||||
|
}
|
||||||
|
[self dismiss];
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
||||||
@@ -41,7 +41,9 @@
|
|||||||
#define kApiVersifyPhoneCode @"user/v1/validateSmsCode"
|
#define kApiVersifyPhoneCode @"user/v1/validateSmsCode"
|
||||||
//注册发送短信
|
//注册发送短信
|
||||||
#define kApiUserRegistSendCode @"msg/sms/v1/registersendcode"
|
#define kApiUserRegistSendCode @"msg/sms/v1/registersendcode"
|
||||||
|
//手机登录 获取验证码
|
||||||
|
#define kApiIUserLoginSendCode @"msg/sms/v1/sendcode"
|
||||||
|
#define kApiUserloginWithSMSCode @"sys/v1/mobilecodelogin"
|
||||||
|
|
||||||
//获取意见反馈类型 (设置意见反馈)
|
//获取意见反馈类型 (设置意见反馈)
|
||||||
#define kApiGetFeedList @"sys/sysdict/v1/maskproposaltype"
|
#define kApiGetFeedList @"sys/sysdict/v1/maskproposaltype"
|
||||||
@@ -71,5 +73,8 @@
|
|||||||
//正式
|
//正式
|
||||||
#define kIMPRITNT @"http://app.mianmoshijian.com/imprint.html?device=ios"
|
#define kIMPRITNT @"http://app.mianmoshijian.com/imprint.html?device=ios"
|
||||||
|
|
||||||
|
//获取默认面膜时间
|
||||||
|
#define kUserDefaultMaskTime @"activity/maskuselog/v1/minute"
|
||||||
|
|
||||||
|
|
||||||
#endif /* ApiRequestConfig_h */
|
#endif /* ApiRequestConfig_h */
|
||||||
|
|||||||
@@ -68,10 +68,9 @@ green:((float)((rgbValue & 0xFF00) >> 8))/255.0 \
|
|||||||
blue:((float)(rgbValue & 0xFF))/255.0 alpha:alphaValue]
|
blue:((float)(rgbValue & 0xFF))/255.0 alpha:alphaValue]
|
||||||
|
|
||||||
#define GIGAUIColorFromRGBA(rgbValue) [UIColor \
|
#define GIGAUIColorFromRGBA(rgbValue) [UIColor \
|
||||||
colorWithRed:((float)((rgbValue & 0xFF000000) >> 24))/255.0 \
|
colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \
|
||||||
green:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \
|
green:((float)((rgbValue & 0xFF00) >> 8))/255.0 \
|
||||||
blue:((float)((rgbValue & 0xFF00) >> 8))/255.0 \
|
blue:((float)(rgbValue & 0xFF))/255.0 alpha:1.f]
|
||||||
alpha:((float)(rgbValue & 0xFF))/255.0]
|
|
||||||
#define GIGA_MAIN_BGCOLOR [UIColor colorWithRed:131/255.0f green:10/255.0f blue:10/255.0f alpha:1]
|
#define GIGA_MAIN_BGCOLOR [UIColor colorWithRed:131/255.0f green:10/255.0f blue:10/255.0f alpha:1]
|
||||||
|
|
||||||
#define SCREEN [UIScreen mainScreen]
|
#define SCREEN [UIScreen mainScreen]
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
switch (type) {
|
switch (type) {
|
||||||
case 0://测试环境
|
case 0://测试环境
|
||||||
{
|
{
|
||||||
|
|
||||||
[[NSUserDefaults standardUserDefaults] setValue:@"http://apiyts.s1.natapp.cc/v1/" forKey:@"MainUrl"];
|
[[NSUserDefaults standardUserDefaults] setValue:@"http://apiyts.s1.natapp.cc/v1/" forKey:@"MainUrl"];
|
||||||
[[NSUserDefaults standardUserDefaults] setValue:@"http://wsyts.s1.natapp.cc" forKey:@"gigasocketUrl"];
|
[[NSUserDefaults standardUserDefaults] setValue:@"http://wsyts.s1.natapp.cc" forKey:@"gigasocketUrl"];
|
||||||
// [[NSUserDefaults standardUserDefaults] setValue:@"https://api.mianmoshijian.com/v1/" forKey:@"MainUrl"];
|
// [[NSUserDefaults standardUserDefaults] setValue:@"https://api.mianmoshijian.com/v1/" forKey:@"MainUrl"];
|
||||||
@@ -25,6 +26,7 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 1: //生产环境
|
case 1: //生产环境
|
||||||
{
|
{
|
||||||
//https://api.mianmoshijian.com/v1/
|
//https://api.mianmoshijian.com/v1/
|
||||||
@@ -33,7 +35,6 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,11 +26,11 @@
|
|||||||
#import "GIGA.h"
|
#import "GIGA.h"
|
||||||
//#import "AFNetworking.h"
|
//#import "AFNetworking.h"
|
||||||
//#import <JSONModel/JSONModel.h>
|
//#import <JSONModel/JSONModel.h>
|
||||||
|
|
||||||
#import "UIView+Toast.h"
|
#import "UIView+Toast.h"
|
||||||
#import "JXTAlertManagerHeader.h"
|
#import "JXTAlertManagerHeader.h"
|
||||||
#import "Masonry.h"
|
#import "Masonry.h"
|
||||||
#import "GiGaHelper.h"
|
#import "GiGaHelper.h"
|
||||||
|
|
||||||
#import "MobClickList.h"
|
#import "MobClickList.h"
|
||||||
#import "TTTAttributedLabel.h"
|
#import "TTTAttributedLabel.h"
|
||||||
#import "GiGaUserManager.h"
|
#import "GiGaUserManager.h"
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>0.8.0</string>
|
<string>0.9.5</string>
|
||||||
<key>CFBundleURLTypes</key>
|
<key>CFBundleURLTypes</key>
|
||||||
<array>
|
<array>
|
||||||
<dict>
|
<dict>
|
||||||
@@ -32,17 +32,9 @@
|
|||||||
<string>wx1fa33defa5cbc8dd</string>
|
<string>wx1fa33defa5cbc8dd</string>
|
||||||
</array>
|
</array>
|
||||||
</dict>
|
</dict>
|
||||||
<dict>
|
|
||||||
<key>CFBundleTypeRole</key>
|
|
||||||
<string>Editor</string>
|
|
||||||
<key>CFBundleURLSchemes</key>
|
|
||||||
<array>
|
|
||||||
<string>Prefs</string>
|
|
||||||
</array>
|
|
||||||
</dict>
|
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>1.4.0</string>
|
<string>1.6.5</string>
|
||||||
<key>LSApplicationQueriesSchemes</key>
|
<key>LSApplicationQueriesSchemes</key>
|
||||||
<array>
|
<array>
|
||||||
<string>weixin</string>
|
<string>weixin</string>
|
||||||
@@ -62,7 +54,6 @@
|
|||||||
<string>是否允许此App使用您的相册?</string>
|
<string>是否允许此App使用您的相册?</string>
|
||||||
<key>UIBackgroundModes</key>
|
<key>UIBackgroundModes</key>
|
||||||
<array>
|
<array>
|
||||||
<string>audio</string>
|
|
||||||
<string>remote-notification</string>
|
<string>remote-notification</string>
|
||||||
</array>
|
</array>
|
||||||
<key>UILaunchStoryboardName</key>
|
<key>UILaunchStoryboardName</key>
|
||||||
|
|||||||
@@ -20,6 +20,7 @@
|
|||||||
[self addNavTitile:@"广告详情"];
|
[self addNavTitile:@"广告详情"];
|
||||||
// Do any additional setup after loading the view.
|
// Do any additional setup after loading the view.
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)didReceiveMemoryWarning {
|
- (void)didReceiveMemoryWarning {
|
||||||
@@ -27,14 +28,5 @@
|
|||||||
// Dispose of any resources that can be recreated.
|
// Dispose of any resources that can be recreated.
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
#pragma mark - Navigation
|
|
||||||
|
|
||||||
// In a storyboard-based application, you will often want to do a little preparation before navigation
|
|
||||||
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
|
|
||||||
// Get the new view controller using [segue destinationViewController].
|
|
||||||
// Pass the selected object to the new view controller.
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -9,5 +9,6 @@
|
|||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
#import "GiGaBaseViewController.h"
|
#import "GiGaBaseViewController.h"
|
||||||
@interface GiGaRegistViewController : GiGaBaseViewController
|
@interface GiGaRegistViewController : GiGaBaseViewController
|
||||||
|
@property (weak, nonatomic) IBOutlet UIScrollView *backScrollView;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -47,6 +47,13 @@
|
|||||||
|
|
||||||
[self resetBackimg];
|
[self resetBackimg];
|
||||||
|
|
||||||
|
if (@available(iOS 11.0, *)) {
|
||||||
|
self.backScrollView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
|
||||||
|
} else {
|
||||||
|
self.automaticallyAdjustsScrollViewInsets = NO;
|
||||||
|
// Fallback on earlier versions
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)resetBackimg{
|
-(void)resetBackimg{
|
||||||
@@ -90,12 +97,12 @@
|
|||||||
GIGA_ShowToast(@"请输入正确手机号");
|
GIGA_ShowToast(@"请输入正确手机号");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
btn.userInteractionEnabled = NO;
|
|
||||||
[self startTimer:btn];
|
|
||||||
[self sendVerifiCode:btn];
|
[self sendVerifiCode:btn];
|
||||||
}
|
}
|
||||||
-(void)startTimer:(UIButton *)btn{
|
-(void)startTimer:(UIButton *)btn{
|
||||||
|
|
||||||
|
btn.userInteractionEnabled = NO;
|
||||||
if (_time>0) {
|
if (_time>0) {
|
||||||
_timer = [NSTimer scheduledTimerWithTimeInterval:1 count:60 callback:^{
|
_timer = [NSTimer scheduledTimerWithTimeInterval:1 count:60 callback:^{
|
||||||
NSString *timeStr=[NSString stringWithFormat:@"%lds",(long)self->_time];
|
NSString *timeStr=[NSString stringWithFormat:@"%lds",(long)self->_time];
|
||||||
@@ -128,7 +135,13 @@
|
|||||||
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
||||||
[MBProgressHUD hideHUDForView:self.view animated:YES];
|
[MBProgressHUD hideHUDForView:self.view animated:YES];
|
||||||
GILog(@"短信获取%@",result.message);
|
GILog(@"短信获取%@",result.message);
|
||||||
btn.userInteractionEnabled = YES;
|
if (result.success) {
|
||||||
|
|
||||||
|
[self startTimer:btn];
|
||||||
|
|
||||||
|
}else{
|
||||||
|
GIGA_ShowToast(result.message);
|
||||||
|
}
|
||||||
}];
|
}];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@
|
|||||||
<objects>
|
<objects>
|
||||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="GiGaRegistViewController">
|
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="GiGaRegistViewController">
|
||||||
<connections>
|
<connections>
|
||||||
|
<outlet property="backScrollView" destination="piO-PU-j8g" id="3ii-Sx-qXY"/>
|
||||||
<outlet property="checkBtn" destination="b06-w9-r2g" id="Cv8-zo-QoL"/>
|
<outlet property="checkBtn" destination="b06-w9-r2g" id="Cv8-zo-QoL"/>
|
||||||
<outlet property="codeTextField" destination="dR7-iu-Eup" id="wNt-AE-gpM"/>
|
<outlet property="codeTextField" destination="dR7-iu-Eup" id="wNt-AE-gpM"/>
|
||||||
<outlet property="passTexFied" destination="UUC-74-fsa" id="4hR-y9-jDa"/>
|
<outlet property="passTexFied" destination="UUC-74-fsa" id="4hR-y9-jDa"/>
|
||||||
@@ -28,17 +29,17 @@
|
|||||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" translatesAutoresizingMaskIntoConstraints="NO" id="piO-PU-j8g">
|
<scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" translatesAutoresizingMaskIntoConstraints="NO" id="piO-PU-j8g">
|
||||||
<rect key="frame" x="0.0" y="20" width="375" height="647"/>
|
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="img_circle_avatar" translatesAutoresizingMaskIntoConstraints="NO" id="SEO-0F-Irb">
|
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="img_circle_avatar" translatesAutoresizingMaskIntoConstraints="NO" id="SEO-0F-Irb">
|
||||||
<rect key="frame" x="130.5" y="87" width="114" height="114"/>
|
<rect key="frame" x="130.5" y="43" width="114" height="114"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="width" constant="114" id="GOs-M2-rAk"/>
|
<constraint firstAttribute="width" constant="114" id="GOs-M2-rAk"/>
|
||||||
<constraint firstAttribute="height" constant="114" id="af0-Mm-2fL"/>
|
<constraint firstAttribute="height" constant="114" id="af0-Mm-2fL"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</imageView>
|
</imageView>
|
||||||
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="请输入手机号" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="uJG-KF-a91">
|
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="请输入手机号" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="uJG-KF-a91">
|
||||||
<rect key="frame" x="66" y="230" width="243" height="48"/>
|
<rect key="frame" x="66" y="186" width="243" height="48"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="48" id="pzi-4C-7s8"/>
|
<constraint firstAttribute="height" constant="48" id="pzi-4C-7s8"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
@@ -47,14 +48,14 @@
|
|||||||
<textInputTraits key="textInputTraits" keyboardType="numberPad"/>
|
<textInputTraits key="textInputTraits" keyboardType="numberPad"/>
|
||||||
</textField>
|
</textField>
|
||||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ubQ-Za-dV7">
|
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ubQ-Za-dV7">
|
||||||
<rect key="frame" x="65" y="280" width="244" height="1"/>
|
<rect key="frame" x="65" y="236" width="244" height="1"/>
|
||||||
<color key="backgroundColor" red="0.94901960784313721" green="0.94901960784313721" blue="0.94901960784313721" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="backgroundColor" red="0.94901960784313721" green="0.94901960784313721" blue="0.94901960784313721" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="1" id="Gbv-lr-zmA"/>
|
<constraint firstAttribute="height" constant="1" id="Gbv-lr-zmA"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</view>
|
</view>
|
||||||
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="短信验证码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="dR7-iu-Eup">
|
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="短信验证码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="dR7-iu-Eup">
|
||||||
<rect key="frame" x="66" y="286" width="130" height="48"/>
|
<rect key="frame" x="66" y="242" width="130" height="48"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="48" id="Iqo-gI-2Z3"/>
|
<constraint firstAttribute="height" constant="48" id="Iqo-gI-2Z3"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
@@ -63,7 +64,7 @@
|
|||||||
<textInputTraits key="textInputTraits" keyboardType="numberPad"/>
|
<textInputTraits key="textInputTraits" keyboardType="numberPad"/>
|
||||||
</textField>
|
</textField>
|
||||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="qAH-Fa-AmF">
|
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="qAH-Fa-AmF">
|
||||||
<rect key="frame" x="221" y="286" width="88" height="48"/>
|
<rect key="frame" x="221" y="242" width="88" height="48"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="width" constant="88" id="kZw-pm-n5p"/>
|
<constraint firstAttribute="width" constant="88" id="kZw-pm-n5p"/>
|
||||||
<constraint firstAttribute="height" constant="48" id="oB6-lP-x7P"/>
|
<constraint firstAttribute="height" constant="48" id="oB6-lP-x7P"/>
|
||||||
@@ -76,21 +77,21 @@
|
|||||||
</state>
|
</state>
|
||||||
</button>
|
</button>
|
||||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Trq-bz-kQT">
|
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Trq-bz-kQT">
|
||||||
<rect key="frame" x="65" y="336" width="244" height="1"/>
|
<rect key="frame" x="65" y="292" width="244" height="1"/>
|
||||||
<color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="1" id="BYZ-mC-rOK"/>
|
<constraint firstAttribute="height" constant="1" id="BYZ-mC-rOK"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</view>
|
</view>
|
||||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Pb5-1e-TXp">
|
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Pb5-1e-TXp">
|
||||||
<rect key="frame" x="65.5" y="395" width="244" height="1"/>
|
<rect key="frame" x="65.5" y="351" width="244" height="1"/>
|
||||||
<color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="1" id="SYH-LK-7FR"/>
|
<constraint firstAttribute="height" constant="1" id="SYH-LK-7FR"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</view>
|
</view>
|
||||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="hZA-nj-Wmu">
|
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="hZA-nj-Wmu">
|
||||||
<rect key="frame" x="84" y="437" width="207" height="41"/>
|
<rect key="frame" x="84" y="393" width="207" height="41"/>
|
||||||
<color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
<color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="41" id="IZZ-Wn-zMh"/>
|
<constraint firstAttribute="height" constant="41" id="IZZ-Wn-zMh"/>
|
||||||
@@ -99,13 +100,13 @@
|
|||||||
<state key="normal" title="注 册"/>
|
<state key="normal" title="注 册"/>
|
||||||
</button>
|
</button>
|
||||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="已阅读并同意《用户服务协议》" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Vxb-TL-wDd" customClass="GiGaAttributedLabel">
|
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="已阅读并同意《用户服务协议》" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Vxb-TL-wDd" customClass="GiGaAttributedLabel">
|
||||||
<rect key="frame" x="117.5" y="550" width="140" height="15"/>
|
<rect key="frame" x="117.5" y="506" width="140" height="15"/>
|
||||||
<fontDescription key="fontDescription" name="PingFangSC-Medium" family="PingFang SC" pointSize="10"/>
|
<fontDescription key="fontDescription" name="PingFangSC-Medium" family="PingFang SC" pointSize="10"/>
|
||||||
<color key="textColor" red="0.56862745098039214" green="0.56862745098039214" blue="0.56862745098039214" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="textColor" red="0.56862745098039214" green="0.56862745098039214" blue="0.56862745098039214" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="highlightedColor" red="0.56862745100000001" green="0.56862745100000001" blue="0.56862745100000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="highlightedColor" red="0.56862745100000001" green="0.56862745100000001" blue="0.56862745100000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
</label>
|
</label>
|
||||||
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="设置登录密码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="UUC-74-fsa">
|
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="设置登录密码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="UUC-74-fsa">
|
||||||
<rect key="frame" x="65.5" y="345" width="244" height="48"/>
|
<rect key="frame" x="65.5" y="301" width="244" height="48"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="48" id="o8f-Xh-HGs"/>
|
<constraint firstAttribute="height" constant="48" id="o8f-Xh-HGs"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
@@ -114,7 +115,7 @@
|
|||||||
<textInputTraits key="textInputTraits" keyboardType="numbersAndPunctuation"/>
|
<textInputTraits key="textInputTraits" keyboardType="numbersAndPunctuation"/>
|
||||||
</textField>
|
</textField>
|
||||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="b06-w9-r2g">
|
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="b06-w9-r2g">
|
||||||
<rect key="frame" x="75" y="539" width="39" height="37"/>
|
<rect key="frame" x="75" y="495" width="39" height="37"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="width" constant="39" id="FeL-ci-mXv"/>
|
<constraint firstAttribute="width" constant="39" id="FeL-ci-mXv"/>
|
||||||
<constraint firstAttribute="height" constant="37" id="sLA-cD-5zI"/>
|
<constraint firstAttribute="height" constant="37" id="sLA-cD-5zI"/>
|
||||||
@@ -128,7 +129,7 @@
|
|||||||
<constraint firstItem="hZA-nj-Wmu" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="7gX-TX-GAa"/>
|
<constraint firstItem="hZA-nj-Wmu" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="7gX-TX-GAa"/>
|
||||||
<constraint firstItem="Vxb-TL-wDd" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="Bz2-Js-CTt"/>
|
<constraint firstItem="Vxb-TL-wDd" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="Bz2-Js-CTt"/>
|
||||||
<constraint firstItem="ubQ-Za-dV7" firstAttribute="leading" secondItem="piO-PU-j8g" secondAttribute="leading" constant="65" id="CGf-BO-qJR"/>
|
<constraint firstItem="ubQ-Za-dV7" firstAttribute="leading" secondItem="piO-PU-j8g" secondAttribute="leading" constant="65" id="CGf-BO-qJR"/>
|
||||||
<constraint firstAttribute="bottom" secondItem="Trq-bz-kQT" secondAttribute="bottom" constant="310" id="CnD-h1-kaA"/>
|
<constraint firstAttribute="bottom" secondItem="Trq-bz-kQT" secondAttribute="bottom" constant="354" id="CnD-h1-kaA"/>
|
||||||
<constraint firstItem="SEO-0F-Irb" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="E3K-GK-vYR"/>
|
<constraint firstItem="SEO-0F-Irb" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="E3K-GK-vYR"/>
|
||||||
<constraint firstItem="uJG-KF-a91" firstAttribute="top" secondItem="SEO-0F-Irb" secondAttribute="bottom" constant="29" id="ECP-qY-1cd"/>
|
<constraint firstItem="uJG-KF-a91" firstAttribute="top" secondItem="SEO-0F-Irb" secondAttribute="bottom" constant="29" id="ECP-qY-1cd"/>
|
||||||
<constraint firstItem="UUC-74-fsa" firstAttribute="top" secondItem="Trq-bz-kQT" secondAttribute="bottom" constant="8" id="Gtf-ex-Tqo"/>
|
<constraint firstItem="UUC-74-fsa" firstAttribute="top" secondItem="Trq-bz-kQT" secondAttribute="bottom" constant="8" id="Gtf-ex-Tqo"/>
|
||||||
@@ -145,7 +146,7 @@
|
|||||||
<constraint firstItem="hZA-nj-Wmu" firstAttribute="leading" relation="lessThanOrEqual" secondItem="piO-PU-j8g" secondAttribute="leading" constant="84" id="fcO-XF-ODc"/>
|
<constraint firstItem="hZA-nj-Wmu" firstAttribute="leading" relation="lessThanOrEqual" secondItem="piO-PU-j8g" secondAttribute="leading" constant="84" id="fcO-XF-ODc"/>
|
||||||
<constraint firstItem="uJG-KF-a91" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="flh-N1-FvK"/>
|
<constraint firstItem="uJG-KF-a91" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="flh-N1-FvK"/>
|
||||||
<constraint firstItem="qAH-Fa-AmF" firstAttribute="trailing" secondItem="uJG-KF-a91" secondAttribute="trailing" id="fsZ-rC-rlA"/>
|
<constraint firstItem="qAH-Fa-AmF" firstAttribute="trailing" secondItem="uJG-KF-a91" secondAttribute="trailing" id="fsZ-rC-rlA"/>
|
||||||
<constraint firstAttribute="trailing" secondItem="ubQ-Za-dV7" secondAttribute="trailing" constant="65" id="j6B-5X-ymb"/>
|
<constraint firstAttribute="trailing" secondItem="ubQ-Za-dV7" secondAttribute="trailing" constant="66" id="j6B-5X-ymb"/>
|
||||||
<constraint firstItem="dR7-iu-Eup" firstAttribute="top" secondItem="ubQ-Za-dV7" secondAttribute="bottom" constant="5" id="jKd-do-Qv6"/>
|
<constraint firstItem="dR7-iu-Eup" firstAttribute="top" secondItem="ubQ-Za-dV7" secondAttribute="bottom" constant="5" id="jKd-do-Qv6"/>
|
||||||
<constraint firstItem="Pb5-1e-TXp" firstAttribute="width" secondItem="Trq-bz-kQT" secondAttribute="width" id="kqU-bv-fGy"/>
|
<constraint firstItem="Pb5-1e-TXp" firstAttribute="width" secondItem="Trq-bz-kQT" secondAttribute="width" id="kqU-bv-fGy"/>
|
||||||
<constraint firstItem="Pb5-1e-TXp" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="mX6-oT-Oeq"/>
|
<constraint firstItem="Pb5-1e-TXp" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="mX6-oT-Oeq"/>
|
||||||
@@ -154,19 +155,19 @@
|
|||||||
<constraint firstItem="hZA-nj-Wmu" firstAttribute="top" secondItem="Pb5-1e-TXp" secondAttribute="bottom" constant="41" id="xYx-Fr-OyO"/>
|
<constraint firstItem="hZA-nj-Wmu" firstAttribute="top" secondItem="Pb5-1e-TXp" secondAttribute="bottom" constant="41" id="xYx-Fr-OyO"/>
|
||||||
<constraint firstItem="b06-w9-r2g" firstAttribute="centerY" secondItem="Vxb-TL-wDd" secondAttribute="centerY" id="y5u-W9-HjP"/>
|
<constraint firstItem="b06-w9-r2g" firstAttribute="centerY" secondItem="Vxb-TL-wDd" secondAttribute="centerY" id="y5u-W9-HjP"/>
|
||||||
<constraint firstItem="UUC-74-fsa" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="yQJ-WR-KVx"/>
|
<constraint firstItem="UUC-74-fsa" firstAttribute="centerX" secondItem="piO-PU-j8g" secondAttribute="centerX" id="yQJ-WR-KVx"/>
|
||||||
<constraint firstItem="SEO-0F-Irb" firstAttribute="top" secondItem="piO-PU-j8g" secondAttribute="top" constant="87" id="ylx-4z-k36"/>
|
<constraint firstItem="SEO-0F-Irb" firstAttribute="top" secondItem="piO-PU-j8g" secondAttribute="top" constant="43" id="ylx-4z-k36"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</scrollView>
|
</scrollView>
|
||||||
</subviews>
|
</subviews>
|
||||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstItem="piO-PU-j8g" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" constant="20" id="FeS-pw-yBz"/>
|
<constraint firstItem="piO-PU-j8g" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" id="FeS-pw-yBz"/>
|
||||||
<constraint firstAttribute="bottom" secondItem="piO-PU-j8g" secondAttribute="bottom" id="LJj-gu-XvO"/>
|
<constraint firstAttribute="bottom" secondItem="piO-PU-j8g" secondAttribute="bottom" id="LJj-gu-XvO"/>
|
||||||
<constraint firstItem="piO-PU-j8g" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="TBf-ZS-9tS"/>
|
<constraint firstItem="piO-PU-j8g" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="TBf-ZS-9tS"/>
|
||||||
<constraint firstAttribute="trailing" secondItem="piO-PU-j8g" secondAttribute="trailing" id="wPj-4k-nEv"/>
|
<constraint firstAttribute="trailing" secondItem="piO-PU-j8g" secondAttribute="trailing" id="wPj-4k-nEv"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
<viewLayoutGuide key="safeArea" id="7gZ-WS-Wjh"/>
|
<viewLayoutGuide key="safeArea" id="7gZ-WS-Wjh"/>
|
||||||
<point key="canvasLocation" x="33.5" y="53.5"/>
|
<point key="canvasLocation" x="32.799999999999997" y="52.623688155922046"/>
|
||||||
</view>
|
</view>
|
||||||
</objects>
|
</objects>
|
||||||
<resources>
|
<resources>
|
||||||
|
|||||||
@@ -10,5 +10,6 @@
|
|||||||
#import "GiGaBaseViewController.h"
|
#import "GiGaBaseViewController.h"
|
||||||
|
|
||||||
@interface GiGaUserLoginVC : GiGaBaseViewController
|
@interface GiGaUserLoginVC : GiGaBaseViewController
|
||||||
|
@property (weak, nonatomic) IBOutlet UIScrollView *backScrollView;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -20,10 +20,12 @@
|
|||||||
#import "GIGAMBHUDHelper.h"
|
#import "GIGAMBHUDHelper.h"
|
||||||
#import "GiGaHelper.h"
|
#import "GiGaHelper.h"
|
||||||
#import "GiGaUserManager.h"
|
#import "GiGaUserManager.h"
|
||||||
|
#import "NSTimer+Convenience.h"
|
||||||
|
|
||||||
@interface GiGaUserLoginVC ()
|
@interface GiGaUserLoginVC ()
|
||||||
@property (weak, nonatomic) IBOutlet UIImageView *userImagView;
|
@property (weak, nonatomic) IBOutlet UIImageView *userImagView;
|
||||||
@property (weak, nonatomic) IBOutlet UITextField *acountTextField;
|
@property (weak, nonatomic) IBOutlet UITextField *acountTextField;
|
||||||
|
//0.9+ 改成code
|
||||||
@property (weak, nonatomic) IBOutlet UITextField *passwordTextField;
|
@property (weak, nonatomic) IBOutlet UITextField *passwordTextField;
|
||||||
@property (weak, nonatomic) IBOutlet UIButton *loginBtn;
|
@property (weak, nonatomic) IBOutlet UIButton *loginBtn;
|
||||||
|
|
||||||
@@ -31,6 +33,8 @@
|
|||||||
@property (weak, nonatomic) IBOutlet UIButton *registBtn;
|
@property (weak, nonatomic) IBOutlet UIButton *registBtn;
|
||||||
|
|
||||||
@property (weak, nonatomic) IBOutlet UIButton *secretBtn;
|
@property (weak, nonatomic) IBOutlet UIButton *secretBtn;
|
||||||
|
@property(nonatomic,strong) NSTimer*timer;
|
||||||
|
@property(nonatomic) NSInteger time;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@@ -38,7 +42,13 @@
|
|||||||
|
|
||||||
- (void)viewDidLoad {
|
- (void)viewDidLoad {
|
||||||
[super viewDidLoad];
|
[super viewDidLoad];
|
||||||
|
_time = 60;
|
||||||
|
if (@available(iOS 11.0, *)) {
|
||||||
|
self.backScrollView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
|
||||||
|
} else {
|
||||||
self.automaticallyAdjustsScrollViewInsets = NO;
|
self.automaticallyAdjustsScrollViewInsets = NO;
|
||||||
|
// Fallback on earlier versions
|
||||||
|
}
|
||||||
// Do any additional setup after loading the view from its nib.
|
// Do any additional setup after loading the view from its nib.
|
||||||
[self setUpX];
|
[self setUpX];
|
||||||
[self textFieldUI];
|
[self textFieldUI];
|
||||||
@@ -90,8 +100,9 @@
|
|||||||
// NSAttributedString *passholderText = [[NSAttributedString alloc] initWithString:@"密码" attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14],NSForegroundColorAttributeName:[UIColor redColor]}];
|
// NSAttributedString *passholderText = [[NSAttributedString alloc] initWithString:@"密码" attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14],NSForegroundColorAttributeName:[UIColor redColor]}];
|
||||||
// self.passwordTextField.attributedPlaceholder = passholderText;
|
// self.passwordTextField.attributedPlaceholder = passholderText;
|
||||||
UIView *passView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 40, 40)];
|
UIView *passView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 40, 40)];
|
||||||
UIImageView *passViewIcon = [[UIImageView alloc] initWithFrame:CGRectMake(15,8, 12, 22)];
|
UIImageView *passViewIcon = [[UIImageView alloc] initWithFrame:CGRectMake(12,13.5, 18, 13)];
|
||||||
passViewIcon.image = [UIImage imageNamed:@"icon_key"];
|
|
||||||
|
passViewIcon.image = [UIImage imageNamed:@"ic_note"];
|
||||||
[passView addSubview:passViewIcon];
|
[passView addSubview:passViewIcon];
|
||||||
self.passwordTextField.leftView = passView;
|
self.passwordTextField.leftView = passView;
|
||||||
self.passwordTextField.leftViewMode = UITextFieldViewModeAlways;
|
self.passwordTextField.leftViewMode = UITextFieldViewModeAlways;
|
||||||
@@ -152,7 +163,7 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark 手机号登录
|
#pragma mark 手机号登录 验证码登录
|
||||||
-(void)loginBtnAction:(UIButton *)btn{
|
-(void)loginBtnAction:(UIButton *)btn{
|
||||||
|
|
||||||
if (self.acountTextField.text.length == 0) {
|
if (self.acountTextField.text.length == 0) {
|
||||||
@@ -168,20 +179,11 @@
|
|||||||
GIGA_ShowToast(@"密码不能为空");
|
GIGA_ShowToast(@"密码不能为空");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// BOOL isPass = [GiGaHelper checkPassWord:self.passwordTextField.text];
|
if (self.passwordTextField.text.length == 0) {
|
||||||
//
|
GIGA_ShowToast(@"请输入验证码");
|
||||||
// if (isPass == NO) {
|
|
||||||
// GIGA_ShowToast(@"请输入6-20位数字和字母组成的密码");
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
int leng = [GiGaHelper convertToInt: self.passwordTextField.text];
|
|
||||||
|
|
||||||
if (!(leng >= 6 && leng <= 20)) {
|
|
||||||
GIGA_ShowToast(@"请输入6-20位数字和字母组成的密码");
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
[self loginWithAction:btn];
|
[self loginWithAction:btn];
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -190,34 +192,41 @@
|
|||||||
|
|
||||||
// NSDictionary *weixinInfoDic = [GiGaUserDefault getWeiXinAccessToenDic];
|
// NSDictionary *weixinInfoDic = [GiGaUserDefault getWeiXinAccessToenDic];
|
||||||
NSString *wechatCode = [GiGaUserDefault getWeiXinCode];
|
NSString *wechatCode = [GiGaUserDefault getWeiXinCode];
|
||||||
|
if (wechatCode==nil) {
|
||||||
|
wechatCode = @"";
|
||||||
|
}
|
||||||
NSDictionary *params = nil;
|
NSDictionary *params = nil;
|
||||||
if (wechatCode) {
|
|
||||||
|
|
||||||
params = @{
|
params = @{
|
||||||
@"username":self.acountTextField.text,
|
@"mobile":self.acountTextField.text,
|
||||||
@"password":self.passwordTextField.text,
|
@"code":self.passwordTextField.text,
|
||||||
@"wechatCode":wechatCode,
|
@"wechatCode":wechatCode,
|
||||||
};
|
};
|
||||||
}else{
|
|
||||||
|
|
||||||
params = @{
|
|
||||||
@"username":self.acountTextField.text,
|
|
||||||
@"password":self.passwordTextField.text
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
//[GIGAMBHUDHelper messageAddto:self.view title:@"登录中..."];
|
//[GIGAMBHUDHelper messageAddto:self.view title:@"登录中..."];
|
||||||
[self.view makeToastActivity:CSToastPositionCenter];
|
[self.view makeToastActivity:CSToastPositionCenter];
|
||||||
NSString *baseapi = [GiGaServerConfig getMainUrl];
|
//NSString *baseapi = [GiGaServerConfig getMainUrl];
|
||||||
NSString *url = [NSString stringWithFormat:@"%@%@",baseapi,kApiUserLogin];
|
//NSString *url = [NSString stringWithFormat:@"%@%@",baseapi,kApiUserloginWithSMSCode];
|
||||||
[GiGaNetManager userbodyRequest:url params:params completionHandler:^(NSURLResponse *response, NSDictionary *resDic, NSError * _Nullable error) {
|
|
||||||
GILog(@"%@",resDic);
|
// [GiGaNetManager userbodyRequest:url params:params completionHandler:^(NSURLResponse *response, NSDictionary *resDic, NSError * _Nullable error) {
|
||||||
|
// GILog(@"%@",resDic);
|
||||||
|
// [self.view hideToastActivity];
|
||||||
|
// GiGaAPIResult *result = [[GiGaAPIResult alloc] initWithDictionary:resDic];
|
||||||
|
// GILog(@"**登陆***\n code:%ld\n message:%@\n *******\n",result.code,result.message);
|
||||||
|
// if (result.success) {
|
||||||
|
// [self userloginSussecess:resDic];
|
||||||
|
// }else{
|
||||||
|
// GIGA_ShowToast(result.message);
|
||||||
|
// }
|
||||||
|
// }];
|
||||||
|
|
||||||
|
//[GIGAMBHUDHelper messageAddto:self.view title:@"登录中..."];
|
||||||
|
[self.view makeToastActivity:CSToastPositionCenter];
|
||||||
|
GiGaBaseAPiRequest *api = [GiGaBaseAPiRequest initWithRequestPath:kApiUserloginWithSMSCode method:RequestPostMethod parms:params];
|
||||||
|
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
||||||
[self.view hideToastActivity];
|
[self.view hideToastActivity];
|
||||||
GiGaAPIResult *result = [[GiGaAPIResult alloc] initWithDictionary:resDic];
|
|
||||||
GILog(@"**登陆***\n code:%ld\n message:%@\n *******\n",result.code,result.message);
|
GILog(@"**登陆***\n code:%ld\n message:%@\n *******\n",result.code,result.message);
|
||||||
if (result.success) {
|
if (result.success) {
|
||||||
[self userloginSussecess:resDic];
|
[self userloginSussecess:result.dic];
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
GIGA_ShowToast(result.message);
|
GIGA_ShowToast(result.message);
|
||||||
@@ -294,7 +303,7 @@
|
|||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
//上传微信用户信息
|
// 微信登陆
|
||||||
-(void)gigaUploadweixinInfo:(NSDictionary *)weiXinUserinfo{
|
-(void)gigaUploadweixinInfo:(NSDictionary *)weiXinUserinfo{
|
||||||
|
|
||||||
[self.view makeToastActivity:CSToastPositionCenter];
|
[self.view makeToastActivity:CSToastPositionCenter];
|
||||||
@@ -307,45 +316,43 @@
|
|||||||
if ([responseDict[@"code"] integerValue] == 0) {
|
if ([responseDict[@"code"] integerValue] == 0) {
|
||||||
[self userloginSussecess:responseDict];
|
[self userloginSussecess:responseDict];
|
||||||
|
|
||||||
}else if([responseDict[@"code"] integerValue] == 500){
|
|
||||||
//登录流程待定
|
|
||||||
[self.view makeToast:responseDict[@"msg"] duration:2.0 position:CSToastPositionCenter];
|
|
||||||
[self jxt_showAlertWithTitle:@"温馨提示" message:@"请先绑定手机账号" appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
|
||||||
alertMaker.addActionCancelTitle(@"知道了");
|
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
|
||||||
|
|
||||||
}];
|
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
[self.view makeToast:responseDict[@"msg"] duration:2.0 position:CSToastPositionCenter];
|
[self.view makeToast:responseDict[@"msg"] duration:2.0 position:CSToastPositionCenter];
|
||||||
}
|
}
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
[self.view makeToast:@"用户信息提交异常"];
|
[self.view makeToast:@"用户信息提交异常"];
|
||||||
GILog(@"上传微信用户信息error:\n%@",error.localizedDescription);
|
GILog(@"上传微信用户信息error:\n%@",error.localizedDescription);
|
||||||
}
|
}
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
//请求用户数据
|
||||||
-(void)userloginSussecess:(NSDictionary *)resDic{
|
-(void)userloginSussecess:(NSDictionary *)resDic{
|
||||||
|
|
||||||
//token 登陆标志
|
//token 登陆标志
|
||||||
[GiGaUserDefault saveToken:resDic[@"token"]];
|
[GiGaUserDefault saveToken:resDic[@"token"]];
|
||||||
|
weakify(self);
|
||||||
|
[[GiGaUserManager shareUser] synsisUserInfo:^(GiGaUser *user) {
|
||||||
|
|
||||||
|
GILog(@"user.userId:%@",user.userId);
|
||||||
|
|
||||||
//埋点
|
//埋点
|
||||||
[MobClick endEvent:MobClick_UserLogin];
|
[MobClick endEvent:MobClick_UserLogin];
|
||||||
GIGA_WIndowTost(@"登录成功!");
|
GIGA_WIndowTost(@"登录成功!");
|
||||||
//请求用户数据
|
|
||||||
|
|
||||||
[[GiGaUserManager shareUser] synsisUserInfo:^(GiGaUser *user) {
|
|
||||||
GILog(@"user.userId:%@",user.userId);
|
|
||||||
NC_POST_NAME_OBJECT(kUserLoginSuccessNoti, nil);
|
NC_POST_NAME_OBJECT(kUserLoginSuccessNoti, nil);
|
||||||
|
[weakSelf dismissViewControllerAnimated:YES completion:nil];
|
||||||
|
|
||||||
} userErrorMsgBlock:^(NSDictionary *errorCodemsg) {
|
} userErrorMsgBlock:^(NSDictionary *errorCodemsg) {
|
||||||
|
|
||||||
|
if (errorCodemsg) {
|
||||||
|
NSString *msg = errorCodemsg[@"msg"];
|
||||||
|
if (msg) {
|
||||||
|
GIGA_ShowToast(msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
}];
|
}];
|
||||||
|
|
||||||
[self dismissViewControllerAnimated:YES completion:nil];
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//接收注册成功通知
|
//接收注册成功通知
|
||||||
@@ -354,18 +361,57 @@
|
|||||||
self.acountTextField.text =(NSString *)noti.object;
|
self.acountTextField.text =(NSString *)noti.object;
|
||||||
}
|
}
|
||||||
|
|
||||||
//密码加密按钮
|
//短信验证码按钮
|
||||||
-(void)secretBtnAction:(UIButton *)btn{
|
-(void)secretBtnAction:(UIButton *)btn{
|
||||||
|
|
||||||
btn.selected = !btn.selected;
|
if (![GiGaHelper isPhoneNumber:self.acountTextField.text]) {
|
||||||
if (btn.selected) {
|
GIGA_ShowToast(@"请输入正确手机号");
|
||||||
//秘文
|
return;
|
||||||
self.passwordTextField.secureTextEntry = YES;
|
}
|
||||||
[btn setImage:[UIImage imageNamed:@"btn_tab_notselect"] forState:UIControlStateSelected];
|
|
||||||
|
[MBProgressHUD showHUDAddedTo:self.view animated:YES];
|
||||||
|
|
||||||
|
NSString *phoneNumber = self.acountTextField.text;
|
||||||
|
NSDictionary *param = @{
|
||||||
|
@"mobile":phoneNumber
|
||||||
|
};
|
||||||
|
GiGaBaseAPiRequest *api = [GiGaBaseAPiRequest initWithRequestPath:kApiIUserLoginSendCode method:RequestPostMethod parms:param];
|
||||||
|
|
||||||
|
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
||||||
|
[MBProgressHUD hideHUDForView:self.view animated:YES];
|
||||||
|
GILog(@"短信获取%@",result.message);
|
||||||
|
|
||||||
|
if (result.success) {
|
||||||
|
[self startTimer:btn];
|
||||||
}else{
|
}else{
|
||||||
self.passwordTextField.secureTextEntry = NO;
|
GIGA_ShowToast(result.message);
|
||||||
[btn setImage:[UIImage imageNamed:@"btn_tab_desplay"] forState:UIControlStateNormal];
|
}
|
||||||
|
}];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//短信登录 验证码倒计时
|
||||||
|
-(void)startTimer:(UIButton *)btn{
|
||||||
|
|
||||||
|
btn.userInteractionEnabled = NO;
|
||||||
|
if (_time>0) {
|
||||||
|
_timer = [NSTimer scheduledTimerWithTimeInterval:1 count:60 callback:^{
|
||||||
|
NSString *timeStr=[NSString stringWithFormat:@"%lds",(long)self->_time];
|
||||||
|
[btn setTitle:timeStr forState:UIControlStateNormal];
|
||||||
|
self->_time--;
|
||||||
|
|
||||||
|
if (self->_time==0) {
|
||||||
|
[self.secretBtn setTitle:@"发送短信" forState:UIControlStateNormal];
|
||||||
|
|
||||||
|
self->_time =60;
|
||||||
|
btn.userInteractionEnabled = YES;
|
||||||
|
}
|
||||||
|
|
||||||
|
}];
|
||||||
|
[[NSRunLoop currentRunLoop] addTimer:self.timer forMode:NSRunLoopCommonModes];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="GiGaUserLoginVC">
|
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="GiGaUserLoginVC">
|
||||||
<connections>
|
<connections>
|
||||||
<outlet property="acountTextField" destination="Yiv-h8-4V1" id="bT2-8W-ab2"/>
|
<outlet property="acountTextField" destination="Yiv-h8-4V1" id="bT2-8W-ab2"/>
|
||||||
|
<outlet property="backScrollView" destination="Z8i-yN-1Cd" id="H0w-vJ-GHh"/>
|
||||||
<outlet property="loginBtn" destination="8Of-JP-gMR" id="uRE-2y-IZt"/>
|
<outlet property="loginBtn" destination="8Of-JP-gMR" id="uRE-2y-IZt"/>
|
||||||
<outlet property="passwordTextField" destination="Y1I-OE-6t1" id="Jgj-sC-7MX"/>
|
<outlet property="passwordTextField" destination="Y1I-OE-6t1" id="Jgj-sC-7MX"/>
|
||||||
<outlet property="registBtn" destination="F5p-cf-frr" id="eHE-mU-8Xf"/>
|
<outlet property="registBtn" destination="F5p-cf-frr" id="eHE-mU-8Xf"/>
|
||||||
@@ -28,10 +29,10 @@
|
|||||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Z8i-yN-1Cd">
|
<scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Z8i-yN-1Cd">
|
||||||
<rect key="frame" x="0.0" y="20" width="375" height="647"/>
|
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="手机号码" textAlignment="natural" minimumFontSize="17" clearButtonMode="whileEditing" translatesAutoresizingMaskIntoConstraints="NO" id="Yiv-h8-4V1">
|
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="手机号码" textAlignment="natural" minimumFontSize="17" clearButtonMode="whileEditing" translatesAutoresizingMaskIntoConstraints="NO" id="Yiv-h8-4V1">
|
||||||
<rect key="frame" x="65" y="225" width="245" height="48"/>
|
<rect key="frame" x="65" y="257" width="245" height="48"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="48" id="vg0-nn-MyL"/>
|
<constraint firstAttribute="height" constant="48" id="vg0-nn-MyL"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
@@ -40,30 +41,30 @@
|
|||||||
<textInputTraits key="textInputTraits" keyboardType="numberPad"/>
|
<textInputTraits key="textInputTraits" keyboardType="numberPad"/>
|
||||||
</textField>
|
</textField>
|
||||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="qzA-vE-CGR">
|
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="qzA-vE-CGR">
|
||||||
<rect key="frame" x="65" y="275" width="245" height="2"/>
|
<rect key="frame" x="65" y="307" width="245" height="2"/>
|
||||||
<color key="backgroundColor" red="0.94901960784313721" green="0.94901960784313721" blue="0.94901960784313721" alpha="1" colorSpace="calibratedRGB"/>
|
<color key="backgroundColor" red="0.94901960784313721" green="0.94901960784313721" blue="0.94901960784313721" alpha="1" colorSpace="calibratedRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="2" id="4IT-CI-Nj4"/>
|
<constraint firstAttribute="height" constant="2" id="4IT-CI-Nj4"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</view>
|
</view>
|
||||||
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="密码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="Y1I-OE-6t1">
|
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="验证码" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="Y1I-OE-6t1">
|
||||||
<rect key="frame" x="65" y="279" width="161" height="48"/>
|
<rect key="frame" x="65" y="311" width="161" height="48"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="48" id="rw6-Ax-vah"/>
|
<constraint firstAttribute="height" constant="48" id="rw6-Ax-vah"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
<nil key="textColor"/>
|
<nil key="textColor"/>
|
||||||
<fontDescription key="fontDescription" name="PingFangSC-Medium" family="PingFang SC" pointSize="12"/>
|
<fontDescription key="fontDescription" name="PingFangSC-Medium" family="PingFang SC" pointSize="12"/>
|
||||||
<textInputTraits key="textInputTraits" keyboardType="numbersAndPunctuation" secureTextEntry="YES"/>
|
<textInputTraits key="textInputTraits" keyboardType="numbersAndPunctuation"/>
|
||||||
</textField>
|
</textField>
|
||||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ZJU-Uo-5TM">
|
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ZJU-Uo-5TM">
|
||||||
<rect key="frame" x="65" y="331" width="245" height="2"/>
|
<rect key="frame" x="65" y="363" width="245" height="2"/>
|
||||||
<color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="calibratedRGB"/>
|
<color key="backgroundColor" red="0.94901960780000005" green="0.94901960780000005" blue="0.94901960780000005" alpha="1" colorSpace="calibratedRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="2" id="kqB-Hm-kqr"/>
|
<constraint firstAttribute="height" constant="2" id="kqB-Hm-kqr"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</view>
|
</view>
|
||||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="chq-bd-6sQ">
|
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="chq-bd-6sQ">
|
||||||
<rect key="frame" x="234" y="341" width="76" height="37"/>
|
<rect key="frame" x="234" y="373" width="76" height="37"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="width" constant="76" id="7Tc-Zf-bbN"/>
|
<constraint firstAttribute="width" constant="76" id="7Tc-Zf-bbN"/>
|
||||||
<constraint firstAttribute="height" constant="37" id="xjD-it-bBa"/>
|
<constraint firstAttribute="height" constant="37" id="xjD-it-bBa"/>
|
||||||
@@ -77,7 +78,7 @@
|
|||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="8Of-JP-gMR">
|
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="8Of-JP-gMR">
|
||||||
<rect key="frame" x="65" y="386" width="245" height="42"/>
|
<rect key="frame" x="65" y="418" width="245" height="42"/>
|
||||||
<color key="backgroundColor" red="0.70980392156862748" green="0.054901960784313725" blue="0.054901960784313725" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="backgroundColor" red="0.70980392156862748" green="0.054901960784313725" blue="0.054901960784313725" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="42" id="apM-nh-gox"/>
|
<constraint firstAttribute="height" constant="42" id="apM-nh-gox"/>
|
||||||
@@ -88,22 +89,27 @@
|
|||||||
</state>
|
</state>
|
||||||
</button>
|
</button>
|
||||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Szo-8C-Zin">
|
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Szo-8C-Zin">
|
||||||
<rect key="frame" x="234" y="282" width="76" height="42"/>
|
<rect key="frame" x="234" y="314" width="76" height="42"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="42" id="HyY-eo-8yw"/>
|
<constraint firstAttribute="height" constant="42" id="HyY-eo-8yw"/>
|
||||||
<constraint firstAttribute="width" constant="76" id="pz1-th-22o"/>
|
<constraint firstAttribute="width" constant="76" id="pz1-th-22o"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
<state key="normal" image="btn_tab_desplay"/>
|
<fontDescription key="fontDescription" name="TimesNewRomanPSMT" family="Times New Roman" pointSize="12"/>
|
||||||
|
<inset key="titleEdgeInsets" minX="-73" minY="0.0" maxX="0.0" maxY="0.0"/>
|
||||||
|
<inset key="imageEdgeInsets" minX="5" minY="0.0" maxX="0.0" maxY="0.0"/>
|
||||||
|
<state key="normal" title="发送验证码" image="btn_meaasag">
|
||||||
|
<color key="titleColor" red="0.91764705879999997" green="0.30196078430000001" blue="0.30196078430000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||||
|
</state>
|
||||||
</button>
|
</button>
|
||||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="img_circle_avatar" translatesAutoresizingMaskIntoConstraints="NO" id="RIl-8E-GcR">
|
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="img_circle_avatar" translatesAutoresizingMaskIntoConstraints="NO" id="RIl-8E-GcR">
|
||||||
<rect key="frame" x="130.5" y="82" width="114" height="114"/>
|
<rect key="frame" x="130.5" y="58" width="114" height="114"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="114" id="JgO-PU-ypI"/>
|
<constraint firstAttribute="height" constant="114" id="JgO-PU-ypI"/>
|
||||||
<constraint firstAttribute="width" constant="114" id="mG0-1p-gP7"/>
|
<constraint firstAttribute="width" constant="114" id="mG0-1p-gP7"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</imageView>
|
</imageView>
|
||||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" hasAttributedTitle="YES" translatesAutoresizingMaskIntoConstraints="NO" id="dnL-WV-spY">
|
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" hasAttributedTitle="YES" translatesAutoresizingMaskIntoConstraints="NO" id="dnL-WV-spY">
|
||||||
<rect key="frame" x="115.5" y="523" width="144" height="38"/>
|
<rect key="frame" x="115.5" y="536" width="144" height="38"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="38" id="l1O-3i-Plv"/>
|
<constraint firstAttribute="height" constant="38" id="l1O-3i-Plv"/>
|
||||||
<constraint firstAttribute="width" constant="144" id="zzO-p2-ENu"/>
|
<constraint firstAttribute="width" constant="144" id="zzO-p2-ENu"/>
|
||||||
@@ -121,11 +127,11 @@
|
|||||||
</attributedString>
|
</attributedString>
|
||||||
</state>
|
</state>
|
||||||
</button>
|
</button>
|
||||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="F5p-cf-frr">
|
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="F5p-cf-frr">
|
||||||
<rect key="frame" x="107" y="436" width="161" height="40"/>
|
<rect key="frame" x="80" y="373" width="55" height="36"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="width" constant="161" id="EU3-ax-K1r"/>
|
<constraint firstAttribute="width" constant="55" id="E7Z-DH-nia"/>
|
||||||
<constraint firstAttribute="height" constant="40" id="W9a-lX-GbY"/>
|
<constraint firstAttribute="height" constant="36" id="n0h-RT-Hkh"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
<fontDescription key="fontDescription" name="PingFangSC-Medium" family="PingFang SC" pointSize="12"/>
|
<fontDescription key="fontDescription" name="PingFangSC-Medium" family="PingFang SC" pointSize="12"/>
|
||||||
<state key="normal" title="创建账号">
|
<state key="normal" title="创建账号">
|
||||||
@@ -134,14 +140,12 @@
|
|||||||
</button>
|
</button>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstItem="RIl-8E-GcR" firstAttribute="top" secondItem="Z8i-yN-1Cd" secondAttribute="top" constant="82" id="4Ud-t0-vg5"/>
|
<constraint firstItem="RIl-8E-GcR" firstAttribute="top" secondItem="Z8i-yN-1Cd" secondAttribute="top" constant="58" id="4Ud-t0-vg5"/>
|
||||||
<constraint firstItem="chq-bd-6sQ" firstAttribute="top" secondItem="ZJU-Uo-5TM" secondAttribute="bottom" constant="8" id="4uH-Hy-3Ai"/>
|
<constraint firstItem="chq-bd-6sQ" firstAttribute="top" secondItem="ZJU-Uo-5TM" secondAttribute="bottom" constant="8" id="4uH-Hy-3Ai"/>
|
||||||
<constraint firstItem="RIl-8E-GcR" firstAttribute="centerX" secondItem="Yiv-h8-4V1" secondAttribute="centerX" id="7Xu-ux-Onh"/>
|
<constraint firstItem="RIl-8E-GcR" firstAttribute="centerX" secondItem="Yiv-h8-4V1" secondAttribute="centerX" id="7Xu-ux-Onh"/>
|
||||||
<constraint firstItem="chq-bd-6sQ" firstAttribute="trailing" secondItem="ZJU-Uo-5TM" secondAttribute="trailing" id="AYA-eD-1K2"/>
|
<constraint firstItem="chq-bd-6sQ" firstAttribute="trailing" secondItem="ZJU-Uo-5TM" secondAttribute="trailing" id="AYA-eD-1K2"/>
|
||||||
<constraint firstItem="ZJU-Uo-5TM" firstAttribute="leading" secondItem="8Of-JP-gMR" secondAttribute="leading" id="B8L-kP-kUe"/>
|
<constraint firstItem="ZJU-Uo-5TM" firstAttribute="leading" secondItem="8Of-JP-gMR" secondAttribute="leading" id="B8L-kP-kUe"/>
|
||||||
<constraint firstItem="F5p-cf-frr" firstAttribute="top" secondItem="8Of-JP-gMR" secondAttribute="bottom" constant="8" id="Frt-kl-gMg"/>
|
|
||||||
<constraint firstItem="qzA-vE-CGR" firstAttribute="top" secondItem="Yiv-h8-4V1" secondAttribute="bottom" constant="2" id="L0e-cp-tPg"/>
|
<constraint firstItem="qzA-vE-CGR" firstAttribute="top" secondItem="Yiv-h8-4V1" secondAttribute="bottom" constant="2" id="L0e-cp-tPg"/>
|
||||||
<constraint firstItem="RIl-8E-GcR" firstAttribute="centerX" secondItem="F5p-cf-frr" secondAttribute="centerX" id="Moz-Pn-3O3"/>
|
|
||||||
<constraint firstItem="ZJU-Uo-5TM" firstAttribute="width" secondItem="qzA-vE-CGR" secondAttribute="width" id="Mpu-H1-Myf"/>
|
<constraint firstItem="ZJU-Uo-5TM" firstAttribute="width" secondItem="qzA-vE-CGR" secondAttribute="width" id="Mpu-H1-Myf"/>
|
||||||
<constraint firstItem="Szo-8C-Zin" firstAttribute="centerY" secondItem="Y1I-OE-6t1" secondAttribute="centerY" id="O8A-1t-51Q"/>
|
<constraint firstItem="Szo-8C-Zin" firstAttribute="centerY" secondItem="Y1I-OE-6t1" secondAttribute="centerY" id="O8A-1t-51Q"/>
|
||||||
<constraint firstItem="Y1I-OE-6t1" firstAttribute="top" secondItem="qzA-vE-CGR" secondAttribute="bottom" constant="2" id="P0X-8h-DcU"/>
|
<constraint firstItem="Y1I-OE-6t1" firstAttribute="top" secondItem="qzA-vE-CGR" secondAttribute="bottom" constant="2" id="P0X-8h-DcU"/>
|
||||||
@@ -152,11 +156,13 @@
|
|||||||
<constraint firstItem="chq-bd-6sQ" firstAttribute="trailing" secondItem="8Of-JP-gMR" secondAttribute="trailing" id="XtD-fx-sr4"/>
|
<constraint firstItem="chq-bd-6sQ" firstAttribute="trailing" secondItem="8Of-JP-gMR" secondAttribute="trailing" id="XtD-fx-sr4"/>
|
||||||
<constraint firstItem="Y1I-OE-6t1" firstAttribute="leading" secondItem="ZJU-Uo-5TM" secondAttribute="leading" id="Y9N-XV-3ir"/>
|
<constraint firstItem="Y1I-OE-6t1" firstAttribute="leading" secondItem="ZJU-Uo-5TM" secondAttribute="leading" id="Y9N-XV-3ir"/>
|
||||||
<constraint firstItem="Yiv-h8-4V1" firstAttribute="leading" secondItem="Z8i-yN-1Cd" secondAttribute="leading" constant="65" id="Yd4-bz-xUn"/>
|
<constraint firstItem="Yiv-h8-4V1" firstAttribute="leading" secondItem="Z8i-yN-1Cd" secondAttribute="leading" constant="65" id="Yd4-bz-xUn"/>
|
||||||
|
<constraint firstItem="dnL-WV-spY" firstAttribute="top" secondItem="8Of-JP-gMR" secondAttribute="bottom" constant="76" id="Ziq-Ha-5FS"/>
|
||||||
|
<constraint firstItem="F5p-cf-frr" firstAttribute="leading" secondItem="ZJU-Uo-5TM" secondAttribute="leading" constant="15" id="ddi-4p-s0s"/>
|
||||||
<constraint firstItem="Szo-8C-Zin" firstAttribute="leading" secondItem="Y1I-OE-6t1" secondAttribute="trailing" constant="8" id="lp1-dg-UCs"/>
|
<constraint firstItem="Szo-8C-Zin" firstAttribute="leading" secondItem="Y1I-OE-6t1" secondAttribute="trailing" constant="8" id="lp1-dg-UCs"/>
|
||||||
<constraint firstItem="dnL-WV-spY" firstAttribute="top" secondItem="F5p-cf-frr" secondAttribute="bottom" constant="47" id="mjV-eX-FF7"/>
|
<constraint firstAttribute="bottom" secondItem="dnL-WV-spY" secondAttribute="bottom" constant="29" id="ooQ-OL-P5e"/>
|
||||||
<constraint firstAttribute="bottom" secondItem="dnL-WV-spY" secondAttribute="bottom" constant="86" id="ooQ-OL-P5e"/>
|
<constraint firstItem="Yiv-h8-4V1" firstAttribute="top" secondItem="RIl-8E-GcR" secondAttribute="bottom" constant="85" id="p63-hU-APq"/>
|
||||||
<constraint firstItem="Yiv-h8-4V1" firstAttribute="top" secondItem="RIl-8E-GcR" secondAttribute="bottom" constant="29" id="p63-hU-APq"/>
|
|
||||||
<constraint firstAttribute="trailing" secondItem="Yiv-h8-4V1" secondAttribute="trailing" constant="65" id="phk-GT-PvS"/>
|
<constraint firstAttribute="trailing" secondItem="Yiv-h8-4V1" secondAttribute="trailing" constant="65" id="phk-GT-PvS"/>
|
||||||
|
<constraint firstItem="F5p-cf-frr" firstAttribute="top" secondItem="ZJU-Uo-5TM" secondAttribute="bottom" constant="8" id="qqc-dh-O24"/>
|
||||||
<constraint firstItem="dnL-WV-spY" firstAttribute="centerX" secondItem="Z8i-yN-1Cd" secondAttribute="centerX" id="rMH-NL-gTu"/>
|
<constraint firstItem="dnL-WV-spY" firstAttribute="centerX" secondItem="Z8i-yN-1Cd" secondAttribute="centerX" id="rMH-NL-gTu"/>
|
||||||
<constraint firstItem="qzA-vE-CGR" firstAttribute="width" secondItem="Yiv-h8-4V1" secondAttribute="width" id="rUt-lu-gtM"/>
|
<constraint firstItem="qzA-vE-CGR" firstAttribute="width" secondItem="Yiv-h8-4V1" secondAttribute="width" id="rUt-lu-gtM"/>
|
||||||
<constraint firstItem="8Of-JP-gMR" firstAttribute="top" secondItem="chq-bd-6sQ" secondAttribute="bottom" constant="8" id="u7n-Dz-uJc"/>
|
<constraint firstItem="8Of-JP-gMR" firstAttribute="top" secondItem="chq-bd-6sQ" secondAttribute="bottom" constant="8" id="u7n-Dz-uJc"/>
|
||||||
@@ -172,14 +178,14 @@
|
|||||||
<constraint firstItem="Z8i-yN-1Cd" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="Gug-bY-bRv"/>
|
<constraint firstItem="Z8i-yN-1Cd" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="Gug-bY-bRv"/>
|
||||||
<constraint firstItem="1vd-yc-0a5" firstAttribute="bottom" secondItem="Z8i-yN-1Cd" secondAttribute="bottom" id="TXU-c3-0M6"/>
|
<constraint firstItem="1vd-yc-0a5" firstAttribute="bottom" secondItem="Z8i-yN-1Cd" secondAttribute="bottom" id="TXU-c3-0M6"/>
|
||||||
<constraint firstAttribute="trailing" secondItem="Z8i-yN-1Cd" secondAttribute="trailing" id="UyN-ah-Reu"/>
|
<constraint firstAttribute="trailing" secondItem="Z8i-yN-1Cd" secondAttribute="trailing" id="UyN-ah-Reu"/>
|
||||||
<constraint firstItem="Z8i-yN-1Cd" firstAttribute="top" secondItem="1vd-yc-0a5" secondAttribute="top" id="bbt-Lx-gQG"/>
|
<constraint firstItem="Z8i-yN-1Cd" firstAttribute="top" secondItem="1vd-yc-0a5" secondAttribute="top" constant="-20" id="bbt-Lx-gQG"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
<viewLayoutGuide key="safeArea" id="1vd-yc-0a5"/>
|
<viewLayoutGuide key="safeArea" id="1vd-yc-0a5"/>
|
||||||
<point key="canvasLocation" x="-84.5" y="-2.5"/>
|
<point key="canvasLocation" x="-85.599999999999994" y="-3.1484257871064472"/>
|
||||||
</view>
|
</view>
|
||||||
</objects>
|
</objects>
|
||||||
<resources>
|
<resources>
|
||||||
<image name="btn_tab_desplay" width="45" height="20"/>
|
<image name="btn_meaasag" width="76" height="22"/>
|
||||||
<image name="btn_wechat" width="126" height="25"/>
|
<image name="btn_wechat" width="126" height="25"/>
|
||||||
<image name="img_circle_avatar" width="114" height="114"/>
|
<image name="img_circle_avatar" width="114" height="114"/>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -80,16 +80,12 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
btn.userInteractionEnabled = NO;
|
|
||||||
|
|
||||||
[self startTimer:btn];
|
|
||||||
[self requstCode:btn];
|
[self requstCode:btn];
|
||||||
}
|
}
|
||||||
|
|
||||||
//计时
|
//计时
|
||||||
-(void)startTimer:(UIButton *)btn{
|
-(void)startTimer:(UIButton *)btn{
|
||||||
|
btn.userInteractionEnabled = NO;
|
||||||
if (_time>0) {
|
if (_time>0) {
|
||||||
_timer = [NSTimer scheduledTimerWithTimeInterval:1 count:60 callback:^{
|
_timer = [NSTimer scheduledTimerWithTimeInterval:1 count:60 callback:^{
|
||||||
NSString *timeStr=[NSString stringWithFormat:@"%lds",(long)self->_time];
|
NSString *timeStr=[NSString stringWithFormat:@"%lds",(long)self->_time];
|
||||||
@@ -123,10 +119,12 @@
|
|||||||
NSDictionary *params = @{@"mobile":self.phoneNumberTextField.text};
|
NSDictionary *params = @{@"mobile":self.phoneNumberTextField.text};
|
||||||
GiGaBaseAPiRequest *requst = [GiGaBaseAPiRequest initWithRequestPath:@"msg/sms/v1/retrievesendcode" method:RequestPostMethod parms:params];
|
GiGaBaseAPiRequest *requst = [GiGaBaseAPiRequest initWithRequestPath:@"msg/sms/v1/retrievesendcode" method:RequestPostMethod parms:params];
|
||||||
[requst requstDataWithResult:^(GiGaAPIResult *result) {
|
[requst requstDataWithResult:^(GiGaAPIResult *result) {
|
||||||
btn.userInteractionEnabled = YES;
|
|
||||||
[self.view hideToastActivity];
|
[self.view hideToastActivity];
|
||||||
GIGA_ShowToast(result.message);
|
GIGA_ShowToast(result.message);
|
||||||
|
if (result.success) {
|
||||||
|
//成功后再开始倒计时
|
||||||
|
[self startTimer:btn];
|
||||||
|
}
|
||||||
}];
|
}];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14113" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14313.18" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
||||||
<device id="retina4_7" orientation="portrait">
|
<device id="retina4_7" orientation="portrait">
|
||||||
<adaptation id="fullscreen"/>
|
<adaptation id="fullscreen"/>
|
||||||
</device>
|
</device>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<deployment identifier="iOS"/>
|
<deployment identifier="iOS"/>
|
||||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
|
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14283.14"/>
|
||||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
@@ -65,7 +65,7 @@
|
|||||||
</constraints>
|
</constraints>
|
||||||
</view>
|
</view>
|
||||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="w3j-WU-gmW">
|
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="w3j-WU-gmW">
|
||||||
<rect key="frame" x="87" y="252.5" width="200" height="41"/>
|
<rect key="frame" x="87" y="252.5" width="201" height="41"/>
|
||||||
<color key="backgroundColor" red="0.70980392156862748" green="0.054901960784313725" blue="0.054901960784313725" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="backgroundColor" red="0.70980392156862748" green="0.054901960784313725" blue="0.054901960784313725" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="41" id="q8T-c9-PAl"/>
|
<constraint firstAttribute="height" constant="41" id="q8T-c9-PAl"/>
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
<constraint firstItem="MHD-nb-UXj" firstAttribute="centerX" secondItem="i5M-Pr-FkT" secondAttribute="centerX" id="wco-Sk-bTY"/>
|
<constraint firstItem="MHD-nb-UXj" firstAttribute="centerX" secondItem="i5M-Pr-FkT" secondAttribute="centerX" id="wco-Sk-bTY"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
<viewLayoutGuide key="safeArea" id="g7Z-wI-UmZ"/>
|
<viewLayoutGuide key="safeArea" id="g7Z-wI-UmZ"/>
|
||||||
<point key="canvasLocation" x="33.5" y="53.5"/>
|
<point key="canvasLocation" x="-161" y="36"/>
|
||||||
</view>
|
</view>
|
||||||
</objects>
|
</objects>
|
||||||
<resources>
|
<resources>
|
||||||
|
|||||||
@@ -18,9 +18,13 @@
|
|||||||
#import "GiGaShareModel.h"
|
#import "GiGaShareModel.h"
|
||||||
#import "UIImageView+WebCache.h"
|
#import "UIImageView+WebCache.h"
|
||||||
#import "UIButton+WebCache.h"
|
#import "UIButton+WebCache.h"
|
||||||
|
#import "GiGaUserInfoVC.h"
|
||||||
|
#import "GIGaSharePageViewController.h"
|
||||||
|
|
||||||
@interface GIGaMaskShareViewController ()<UIImagePickerControllerDelegate,UINavigationControllerDelegate>
|
@interface GIGaMaskShareViewController ()<UIImagePickerControllerDelegate,UINavigationControllerDelegate>
|
||||||
@property(nonatomic,strong) GiGaShareModel *model;
|
@property(nonatomic,strong) GiGaShareModel *model;
|
||||||
|
@property(nonatomic,strong)NSMutableArray *viewControllers;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation GIGaMaskShareViewController
|
@implementation GIGaMaskShareViewController
|
||||||
@@ -51,7 +55,7 @@
|
|||||||
rightBtn.layer.masksToBounds = YES;
|
rightBtn.layer.masksToBounds = YES;
|
||||||
rightBtn.layer.cornerRadius = 20;
|
rightBtn.layer.cornerRadius = 20;
|
||||||
[rightBtn setImage:[UIImage imageNamed:@"nav_circle_avatar"] forState:UIControlStateNormal];
|
[rightBtn setImage:[UIImage imageNamed:@"nav_circle_avatar"] forState:UIControlStateNormal];
|
||||||
|
[rightBtn addTarget:self action:@selector(goUserInfoView) forControlEvents:UIControlEventTouchUpInside];
|
||||||
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:rightBtn];
|
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:rightBtn];
|
||||||
|
|
||||||
if ([[[UIDevice currentDevice] systemVersion] doubleValue] >= 11.0) {
|
if ([[[UIDevice currentDevice] systemVersion] doubleValue] >= 11.0) {
|
||||||
@@ -74,6 +78,12 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-(void)goUserInfoView{
|
||||||
|
|
||||||
|
GiGaUserInfoVC *userVC= [[GiGaUserInfoVC alloc] init];
|
||||||
|
[self.navigationController pushViewController:userVC animated:YES];
|
||||||
|
}
|
||||||
|
|
||||||
- (void)didReceiveMemoryWarning {
|
- (void)didReceiveMemoryWarning {
|
||||||
[super didReceiveMemoryWarning];
|
[super didReceiveMemoryWarning];
|
||||||
// Dispose of any resources that can be recreated.
|
// Dispose of any resources that can be recreated.
|
||||||
@@ -98,7 +108,9 @@
|
|||||||
cell.minuteLab.text = [NSString stringWithFormat:@"%@min",self.model.minute];
|
cell.minuteLab.text = [NSString stringWithFormat:@"%@min",self.model.minute];
|
||||||
cell.timeLable.text = [NSString stringWithFormat:@"这是您敷面膜的第:%@张",self.model.monthMaskNum];
|
cell.timeLable.text = [NSString stringWithFormat:@"这是您敷面膜的第:%@张",self.model.monthMaskNum];
|
||||||
if (self.model.productImgUrl && ![self.model.productImgUrl isKindOfClass:[NSNull class]]) {
|
if (self.model.productImgUrl && ![self.model.productImgUrl isKindOfClass:[NSNull class]]) {
|
||||||
[cell.holdImagView sd_setImageWithURL:[NSURL URLWithString:self.model.productImgUrl]];
|
//[cell.holdImagView sd_setImageWithURL:[NSURL URLWithString:self.model.productImgUrl]];
|
||||||
|
[cell.holdImagView sd_setImageWithURL:[NSURL URLWithString:self.model.productImgUrl] placeholderImage:[UIImage imageNamed:@"img_product"]];
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,9 +182,9 @@
|
|||||||
case 1:
|
case 1:
|
||||||
{
|
{
|
||||||
//系统
|
//系统
|
||||||
[GIGaUserFileHelper delectShareImage:kUSERSHAREA_IMAGENAME];
|
//[GIGaUserFileHelper delectShareImage:kUSERSHAREA_IMAGENAME];
|
||||||
ShareViewController *share = [[ShareViewController alloc] init];
|
GIGaSharePageViewController *share = [[GIGaSharePageViewController alloc] initWithControllers:self.viewControllers];
|
||||||
share.model = self.model;
|
//share.model = self.model;
|
||||||
[self presentViewController:share animated:NO completion:nil];
|
[self presentViewController:share animated:NO completion:nil];
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -191,12 +203,43 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (NSMutableArray *)viewControllers {
|
||||||
|
if (!_viewControllers) {
|
||||||
|
_viewControllers = [NSMutableArray array];
|
||||||
|
NSArray *descArr = @[@"生活不易,必须美丽",@"长夜漫漫,不如面膜时间",@"敷片面膜,人间值得",@"打开面膜时间,撰写你与美丽的故事",@"人越美丽,责任越大",@"吃得苦中苦,方为人上人",@"该放弃的决不挽留,该留住的决不放手"];
|
||||||
|
NSArray *images = @[@"sharebg_1",@"sharebg_2",@"sharebg_3",@"sharebg_4",@"sharebg_5",@"sharebg_6",@"sharebg_7"];
|
||||||
|
NSArray *shareimages = @[@"share_oneblack",@"share_one",@"share_one",@"share_one",@"share_one",@"share_one",@"share_one"];
|
||||||
|
NSArray *desColor = @[@1,@1,@2,@1,@1,@1,@2];
|
||||||
|
|
||||||
|
NSArray*doingcolorS = @[@2,@3,@2,@2,@2,@2,@2];
|
||||||
|
|
||||||
|
for (int i = 0; i <descArr.count; i++) {
|
||||||
|
ShareViewController *vc = [[ShareViewController alloc] init];
|
||||||
|
GiGaLoaclImageModel *model = [[GiGaLoaclImageModel alloc] init];
|
||||||
|
model.desc = descArr[i];
|
||||||
|
model.localImageName = images[i];
|
||||||
|
model.shareLabeimageName = shareimages[i];
|
||||||
|
model.doingColorflag = [doingcolorS[i] integerValue];
|
||||||
|
model.descColorflag = [desColor[i] integerValue];
|
||||||
|
vc.localModel = model;
|
||||||
|
vc.model = self.model;
|
||||||
|
[_viewControllers addObject:vc];
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return _viewControllers;
|
||||||
|
}
|
||||||
|
|
||||||
#pragma mark share
|
#pragma mark share
|
||||||
-(void)shareBtnAction{
|
-(void)shareBtnAction{
|
||||||
|
|
||||||
ShareViewController *share = [[ShareViewController alloc] init];
|
GIGaSharePageViewController *share = [[GIGaSharePageViewController alloc] initWithControllers:self.viewControllers];
|
||||||
share.model = self.model;
|
//share.model = self.model;
|
||||||
[self presentViewController:share animated:YES completion:nil];
|
[self presentViewController:share animated:NO completion:nil];
|
||||||
|
// ShareViewController *share = [[ShareViewController alloc] init];
|
||||||
|
// share.model = self.model;
|
||||||
|
// [self presentViewController:share animated:YES completion:nil];
|
||||||
|
//
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -213,19 +256,13 @@
|
|||||||
|
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
NSString *errorStr = @"应用相权册限受限,请在设置中启用";
|
NSString *errorStr = @"应用相册权限受限,请在设置中启用";
|
||||||
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
||||||
alertMaker.addActionCancelTitle(@"取消");
|
alertMaker.addActionCancelTitle(@"知道了");
|
||||||
alertMaker.addActionDefaultTitle(@"去开启");
|
//alertMaker.addActionDefaultTitle(@"去开启");
|
||||||
|
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
if (buttonIndex == 1) {
|
|
||||||
NSURL *url = [NSURL URLWithString:@"prefs:root=Photos"];
|
|
||||||
if ([[UIApplication sharedApplication] canOpenURL:url]) {
|
|
||||||
[[UIApplication sharedApplication] openURL:url];
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -242,21 +279,12 @@
|
|||||||
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
|
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
|
||||||
NSString *errorStr = @"应用相机权限受限,请在设置中启用";
|
NSString *errorStr = @"应用相机权限受限,请在设置中启用";
|
||||||
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
||||||
alertMaker.addActionCancelTitle(@"取消");
|
alertMaker.addActionCancelTitle(@"知道了");
|
||||||
alertMaker.addActionDefaultTitle(@"去开启");
|
//alertMaker.addActionDefaultTitle(@"去开启");
|
||||||
|
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
|
|
||||||
if (buttonIndex == 1) {
|
|
||||||
|
|
||||||
NSString *urlStr = @"App-Prefs:root=Photos";
|
|
||||||
if (@available(iOS 10.0, *)) {
|
|
||||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr] options:@{} completionHandler:nil];
|
|
||||||
} else {
|
|
||||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr]];
|
|
||||||
// Fallback on earlier versions
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}];
|
}];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -289,7 +317,6 @@
|
|||||||
|
|
||||||
-(void)requestshareInfo{
|
-(void)requestshareInfo{
|
||||||
|
|
||||||
|
|
||||||
if (self.maskTimeId == nil) {
|
if (self.maskTimeId == nil) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,18 @@
|
|||||||
|
//
|
||||||
|
// GIGaSharePageViewController.h
|
||||||
|
// GIGA
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/12.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
//#import "GiGaShareModel.h"
|
||||||
|
@interface GIGaSharePageViewController : UIViewController
|
||||||
|
//@property(nonatomic,strong) GiGaShareModel *model;
|
||||||
|
|
||||||
|
- (instancetype)initWithControllers:(NSArray *)viewControllers;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,153 @@
|
|||||||
|
//
|
||||||
|
// GIGaSharePageViewController.m
|
||||||
|
// GIGA
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/12.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "GIGaSharePageViewController.h"
|
||||||
|
|
||||||
|
@interface GIGaSharePageViewController ()<UIPageViewControllerDataSource,UIPageViewControllerDelegate,UIScrollViewDelegate>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOL _done; //是否翻页完成
|
||||||
|
NSInteger _currentPage;//当前控制器对应下标
|
||||||
|
}
|
||||||
|
|
||||||
|
@property(nonatomic,strong) UIPageViewController *pageVC;
|
||||||
|
//@property(nonatomic,strong) NSArray *titles;
|
||||||
|
@property(nonatomic,strong) NSArray *viewControllers;
|
||||||
|
@property(nonatomic,strong) UIPageControl *pageControl;
|
||||||
|
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation GIGaSharePageViewController
|
||||||
|
|
||||||
|
- (UIPageControl *)pageControl{
|
||||||
|
if (!_pageControl) {
|
||||||
|
_pageControl = [[UIPageControl alloc] init];
|
||||||
|
_pageControl.frame = CGRectMake(KMainW / 2 - 100, KMainH - 20, 200, 20);
|
||||||
|
_pageControl.numberOfPages = self.viewControllers.count;
|
||||||
|
_pageControl.hidesForSinglePage = YES;
|
||||||
|
_pageControl.userInteractionEnabled = NO;
|
||||||
|
}
|
||||||
|
return _pageControl;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (instancetype)initWithControllers:(NSArray *)viewControllers{
|
||||||
|
self = [super init];
|
||||||
|
if (self) {
|
||||||
|
self.viewControllers = viewControllers;
|
||||||
|
}
|
||||||
|
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)viewDidLoad {
|
||||||
|
[super viewDidLoad];
|
||||||
|
self.view.backgroundColor = [UIColor whiteColor];
|
||||||
|
// Do any additional setup after loading the view.
|
||||||
|
[self addChildViewController:self.pageVC];
|
||||||
|
[self.view addSubview:self.pageVC.view];
|
||||||
|
[self.view addSubview:self.pageControl];
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - UIPageViewControllerDataSource
|
||||||
|
// 返回下一个ViewController对象
|
||||||
|
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController {
|
||||||
|
|
||||||
|
NSUInteger index = [self indexOfViewController:viewController];
|
||||||
|
|
||||||
|
if (index == NSNotFound) {
|
||||||
|
return nil;
|
||||||
|
}
|
||||||
|
index++;
|
||||||
|
|
||||||
|
if (index == [self.viewControllers count]) {
|
||||||
|
return nil;
|
||||||
|
}
|
||||||
|
|
||||||
|
return self.viewControllers[index];
|
||||||
|
}
|
||||||
|
// 返回上一个ViewController对象
|
||||||
|
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController {
|
||||||
|
NSUInteger index = [self indexOfViewController:viewController];
|
||||||
|
|
||||||
|
if (index == 0 || index == NSNotFound) {
|
||||||
|
return nil;
|
||||||
|
}
|
||||||
|
index--;
|
||||||
|
|
||||||
|
return self.viewControllers[index];
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - UIPageViewControllerDelegate
|
||||||
|
|
||||||
|
// 开始翻页调用
|
||||||
|
- (void)pageViewController:(UIPageViewController *)pageViewController willTransitionToViewControllers:(NSArray<UIViewController *> *)pendingViewControllers NS_AVAILABLE_IOS(6_0) {
|
||||||
|
NSLog(@"开始翻页");
|
||||||
|
}
|
||||||
|
// 翻页完成调用
|
||||||
|
- (void)pageViewController:(UIPageViewController *)pageViewController didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray<UIViewController *> *)previousViewControllers transitionCompleted:(BOOL)completed {
|
||||||
|
_done = YES;
|
||||||
|
|
||||||
|
NSInteger index = [self.viewControllers indexOfObject:pageViewController.viewControllers[0]];
|
||||||
|
_currentPage = index;
|
||||||
|
|
||||||
|
[_pageControl setCurrentPage:_currentPage];
|
||||||
|
NSLog(@"翻页完成");
|
||||||
|
}
|
||||||
|
|
||||||
|
-(UIInterfaceOrientation)pageViewControllerPreferredInterfaceOrientationForPresentation:(UIPageViewController *)pageViewController NS_AVAILABLE_IOS(7_0) __TVOS_PROHIBITED {
|
||||||
|
return UIInterfaceOrientationPortrait;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#pragma mark - Tool
|
||||||
|
// 根据数组元素,得到下标值
|
||||||
|
- (NSUInteger)indexOfViewController:(UIViewController *)viewControlller {
|
||||||
|
return [self.viewControllers indexOfObject:viewControlller];
|
||||||
|
}
|
||||||
|
#pragma mark - SCrollViewDelegate
|
||||||
|
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
|
||||||
|
{
|
||||||
|
// LOG(@"滚动 = %f", scrollView.contentOffset.x-SCREEN_WIDTH);
|
||||||
|
//CGFloat offsetX = scrollView.contentOffset.x-KMainW;
|
||||||
|
|
||||||
|
if (!_done) {
|
||||||
|
|
||||||
|
[_pageControl setCurrentPage:_currentPage];
|
||||||
|
|
||||||
|
}else
|
||||||
|
{
|
||||||
|
_done = NO;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UIPageViewController *)pageVC {
|
||||||
|
|
||||||
|
if (!_pageVC) {
|
||||||
|
|
||||||
|
_pageVC = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
|
||||||
|
_pageVC.dataSource = self;
|
||||||
|
_pageVC.delegate = self;
|
||||||
|
_pageVC.view.frame = CGRectMake(0,0,KMainW, KMainH);
|
||||||
|
|
||||||
|
for (UIView *subview in _pageVC.view.subviews) {
|
||||||
|
|
||||||
|
[(UIScrollView *)subview setDelegate:self];
|
||||||
|
//设置是否支持手势滑动
|
||||||
|
// [(UIScrollView *)subview setScrollEnabled:NO];
|
||||||
|
|
||||||
|
}
|
||||||
|
[_pageVC setViewControllers:@[self.viewControllers[0]] direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:nil];
|
||||||
|
}
|
||||||
|
|
||||||
|
return _pageVC;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@end
|
||||||
@@ -9,76 +9,197 @@
|
|||||||
#import "GiGaAppGaurdVC.h"
|
#import "GiGaAppGaurdVC.h"
|
||||||
#import "Masonry.h"
|
#import "Masonry.h"
|
||||||
#import "GiGaUserDefault.h"
|
#import "GiGaUserDefault.h"
|
||||||
|
#import "GiGaPageControl.h"
|
||||||
|
#import "LXPageControl.h"
|
||||||
|
|
||||||
@interface GiGaAppGaurdVC ()
|
@interface GiGaAppGaurdVC ()<UIScrollViewDelegate>
|
||||||
|
@property(nonatomic,strong) LXPageControl *pagControl;
|
||||||
|
@property(nonatomic,strong)UIScrollView * scrollView;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation GiGaAppGaurdVC
|
@implementation GiGaAppGaurdVC
|
||||||
|
- (LXPageControl *)pagControl
|
||||||
|
{
|
||||||
|
if (!_pagControl) {
|
||||||
|
_pagControl = [[LXPageControl alloc] initWithFrame:CGRectMake(0, KMainH - 63 - PhoneX_BottomMargin, KMainW, 8)];
|
||||||
|
_pagControl.numberOfPages = 3;
|
||||||
|
_pagControl.currentPage = 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
return _pagControl;
|
||||||
|
}
|
||||||
|
- (UIScrollView *)scrollView
|
||||||
|
{
|
||||||
|
if (!_scrollView) {
|
||||||
|
_scrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)];
|
||||||
|
_scrollView.backgroundColor = [UIColor redColor];
|
||||||
|
_scrollView.pagingEnabled=true;
|
||||||
|
_scrollView.delegate=self;
|
||||||
|
_scrollView.showsHorizontalScrollIndicator=false;
|
||||||
|
_scrollView.showsVerticalScrollIndicator=false;
|
||||||
|
}
|
||||||
|
return _scrollView;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
- (void)viewDidLoad {
|
- (void)viewDidLoad {
|
||||||
[super viewDidLoad];
|
[super viewDidLoad];
|
||||||
// Do any additional setup after loading the view.
|
// Do any additional setup after loading the view.
|
||||||
self.view.backgroundColor = [UIColor blueColor];
|
self.view.backgroundColor = [UIColor blackColor];
|
||||||
[GiGaUserDefault saveAppGaurdflag:YES];
|
[GiGaUserDefault saveAppGaurdflag:YES];
|
||||||
[self creatUI];
|
[self creatSubs];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)creatUI{
|
//MARK: - scrollView delegate
|
||||||
|
//结束滚动
|
||||||
|
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
|
||||||
|
|
||||||
|
[self updatePage];
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)updatePage{
|
||||||
|
|
||||||
|
self.pagControl.currentPage = self.scrollView.contentOffset.x / self.scrollView.bounds.size.width;
|
||||||
|
self.pagControl.hidden = self.scrollView.contentOffset.x / self.scrollView.bounds.size.width == 2 ? YES : NO;
|
||||||
|
GILog(@"%ld",self.pagControl.currentPage);
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)creatSubs{
|
||||||
|
|
||||||
|
[self.view addSubview:self.scrollView];
|
||||||
|
[self.view addSubview:self.pagControl];
|
||||||
|
self.scrollView.contentSize = CGSizeMake(self.scrollView.bounds.size.width*self.pagControl.numberOfPages, self.scrollView.bounds.size.height);
|
||||||
|
self.scrollView.bounces=NO;
|
||||||
|
|
||||||
|
for (int i=0; i<3; i++) {
|
||||||
|
UIView *pageView = [[UIView alloc] init];
|
||||||
|
pageView.backgroundColor = [UIColor blueColor];
|
||||||
|
pageView.frame = CGRectMake(i*self.scrollView.bounds.size.width, 0, self.scrollView.bounds.size.width, self.scrollView.bounds.size.height);
|
||||||
|
|
||||||
|
[self.scrollView addSubview:pageView];
|
||||||
|
|
||||||
|
if (i==0) {
|
||||||
|
[self creatFirstPage:pageView];
|
||||||
|
}else if (i==1){
|
||||||
|
[self creat2Page:pageView];
|
||||||
|
}else if (i==2){
|
||||||
|
[self creat3Page:pageView];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[self creatcommonView];
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)creatFirstPage:(UIView *)inView{
|
||||||
|
|
||||||
UIImageView *backimage = [[UIImageView alloc] init];
|
UIImageView *backimage = [[UIImageView alloc] init];
|
||||||
backimage.image = [UIImage imageNamed:@"appgaurd_bg"];
|
backimage.image = [UIImage imageNamed:@"appgaurd_bg"];
|
||||||
backimage.frame = CGRectMake(0, 0, KMainW, KMainH);
|
backimage.frame = CGRectMake(0, 0, KMainW, KMainH);
|
||||||
//backimage.contentMode = UIViewContentModeScaleToFill;
|
//backimage.contentMode = UIViewContentModeScaleToFill;
|
||||||
[self.view addSubview:backimage];
|
[inView addSubview:backimage];
|
||||||
|
|
||||||
[backimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
[backimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.top.mas_equalTo(self.view.mas_top);
|
make.top.mas_equalTo(inView.mas_top);
|
||||||
make.bottom.mas_equalTo(self.view.mas_bottom);
|
make.bottom.mas_equalTo(inView.mas_bottom);
|
||||||
make.left.mas_equalTo(self.view.mas_left);
|
make.left.mas_equalTo(inView.mas_left);
|
||||||
make.right.mas_equalTo(self.view.mas_right);
|
make.right.mas_equalTo(inView.mas_right);
|
||||||
|
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
UIImageView *girlimage = [[UIImageView alloc] init];
|
UIImageView *girlimage = [[UIImageView alloc] init];
|
||||||
girlimage.image = [UIImage imageNamed:@"appgaurd_woman"];
|
girlimage.image = [UIImage imageNamed:@"appgaurd_woman"];
|
||||||
[self.view addSubview:girlimage];
|
[inView addSubview:girlimage];
|
||||||
girlimage.contentMode = UIViewContentModeScaleAspectFit;
|
girlimage.contentMode = UIViewContentModeScaleAspectFit;
|
||||||
[girlimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
[girlimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.top.mas_equalTo(self.view.mas_top).offset(104 + PhoneX_TopMargin);
|
make.top.mas_equalTo(inView.mas_top).offset(104 + PhoneX_TopMargin);
|
||||||
make.centerX.mas_equalTo(self.view.mas_centerX);
|
make.centerX.mas_equalTo(inView.mas_centerX);
|
||||||
|
|
||||||
|
|
||||||
}];
|
}];
|
||||||
|
|
||||||
UIImageView *moonimage = [[UIImageView alloc] init];
|
UIImageView *moonimage = [[UIImageView alloc] init];
|
||||||
moonimage.image = [UIImage imageNamed:@"appgaurd_moon"];
|
moonimage.image = [UIImage imageNamed:@"appgaurd_moon"];
|
||||||
[self.view addSubview:moonimage];
|
[inView addSubview:moonimage];
|
||||||
|
|
||||||
[moonimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
[moonimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.top.mas_equalTo(self.view.mas_top).offset(13 + PhoneX_TopMargin);
|
make.top.mas_equalTo(inView.mas_top).offset(13 + PhoneX_TopMargin);
|
||||||
make.right.mas_equalTo(self.view.mas_right).offset(-5.5);
|
make.right.mas_equalTo(inView.mas_right).offset(-24);
|
||||||
|
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)creat2Page:(UIView *)inView{
|
||||||
|
UIImageView *backimage = [[UIImageView alloc] init];
|
||||||
|
backimage.image = [UIImage imageNamed:@"page2_img"];
|
||||||
|
backimage.frame = CGRectMake(0, 0, KMainW, KMainH);
|
||||||
|
//backimage.contentMode = UIViewContentModeScaleToFill;
|
||||||
|
[inView addSubview:backimage];
|
||||||
|
|
||||||
|
UIImageView *girlimage = [[UIImageView alloc] init];
|
||||||
|
girlimage.image = [UIImage imageNamed:@"page2_women"];
|
||||||
|
[inView addSubview:girlimage];
|
||||||
|
girlimage.contentMode = UIViewContentModeScaleAspectFit;
|
||||||
|
[girlimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.top.mas_equalTo(inView.mas_top).offset(104 + PhoneX_TopMargin);
|
||||||
|
make.centerX.mas_equalTo(inView.mas_centerX);
|
||||||
|
|
||||||
|
|
||||||
|
}];
|
||||||
|
|
||||||
|
UIImageView *moonimage = [[UIImageView alloc] init];
|
||||||
|
moonimage.image = [UIImage imageNamed:@"appgaurd_moon"];
|
||||||
|
[inView addSubview:moonimage];
|
||||||
|
|
||||||
|
[moonimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.top.mas_equalTo(inView.mas_top).offset(13 + PhoneX_TopMargin);
|
||||||
|
make.right.mas_equalTo(inView.mas_right).offset(-24);
|
||||||
|
|
||||||
|
}];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)creat3Page:(UIView *)inView{
|
||||||
|
UIImageView *backimage = [[UIImageView alloc] init];
|
||||||
|
backimage.image = [UIImage imageNamed:@"page3_img"];
|
||||||
|
backimage.frame = CGRectMake(0, 0, KMainW, KMainH);
|
||||||
|
//backimage.contentMode = UIViewContentModeScaleToFill;
|
||||||
|
[inView addSubview:backimage];
|
||||||
|
|
||||||
|
|
||||||
|
UIImageView *girlimage = [[UIImageView alloc] init];
|
||||||
|
girlimage.image = [UIImage imageNamed:@"page3_woman"];
|
||||||
|
[inView addSubview:girlimage];
|
||||||
|
girlimage.contentMode = UIViewContentModeScaleAspectFit;
|
||||||
|
[girlimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.top.mas_equalTo(inView.mas_top).offset(104 + PhoneX_TopMargin);
|
||||||
|
make.centerX.mas_equalTo(inView.mas_centerX);
|
||||||
|
|
||||||
|
|
||||||
|
}];
|
||||||
|
|
||||||
|
UIImageView *logoimage = [[UIImageView alloc] init];
|
||||||
|
logoimage.image = [UIImage imageNamed:@"page_logo"];
|
||||||
|
[inView addSubview:logoimage];
|
||||||
|
|
||||||
|
[logoimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.top.mas_equalTo(inView.mas_top).offset(13 + PhoneX_TopMargin);
|
||||||
|
make.right.mas_equalTo(inView.mas_right).offset(-24);
|
||||||
|
|
||||||
|
}];
|
||||||
|
|
||||||
|
|
||||||
UIButton *dismisBtn= [UIButton buttonWithType:UIButtonTypeCustom];
|
UIButton *dismisBtn= [UIButton buttonWithType:UIButtonTypeCustom];
|
||||||
[dismisBtn setTitle:@"立即体验" forState:UIControlStateNormal];
|
[dismisBtn setTitle:@"立即体验" forState:UIControlStateNormal];
|
||||||
|
|
||||||
//dismisBtn.backgroundColor = [UIColor greenColor];
|
//dismisBtn.backgroundColor = [UIColor greenColor];
|
||||||
[dismisBtn addTarget:self action:@selector(dismisBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
[dismisBtn addTarget:self action:@selector(dismisBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
||||||
[self.view addSubview:dismisBtn];
|
[inView addSubview:dismisBtn];
|
||||||
|
|
||||||
[dismisBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
[dismisBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.width.mas_equalTo(160);
|
make.width.mas_equalTo(160);
|
||||||
make.height.mas_equalTo(40);
|
make.height.mas_equalTo(40);
|
||||||
make.centerX.mas_equalTo(self.view.mas_centerX);
|
make.centerX.mas_equalTo(inView.mas_centerX);
|
||||||
make.bottom.mas_equalTo(self.view.mas_bottom).offset(-100);
|
make.bottom.mas_equalTo(inView.mas_bottom).offset(-100);
|
||||||
make.top.mas_greaterThanOrEqualTo(girlimage.mas_bottom).offset(20);
|
make.top.mas_greaterThanOrEqualTo(girlimage.mas_bottom).offset(20);
|
||||||
}];
|
}];
|
||||||
|
|
||||||
@@ -88,6 +209,21 @@
|
|||||||
dismisBtn.layer.borderColor = [UIColor whiteColor].CGColor;
|
dismisBtn.layer.borderColor = [UIColor whiteColor].CGColor;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
-(void)creatcommonView{
|
||||||
|
|
||||||
|
// UIImageView *moonimage = [[UIImageView alloc] init];
|
||||||
|
// moonimage.image = [UIImage imageNamed:@"appgaurd_moon"];
|
||||||
|
// [self.view addSubview:moonimage];
|
||||||
|
//
|
||||||
|
// [moonimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
// make.top.mas_equalTo(self.view.mas_top).offset(13 + PhoneX_TopMargin);
|
||||||
|
// make.right.mas_equalTo(self.view.mas_right).offset(-24);
|
||||||
|
//
|
||||||
|
// }];
|
||||||
|
|
||||||
UIView *botomlineView = [[UIView alloc] init];
|
UIView *botomlineView = [[UIView alloc] init];
|
||||||
botomlineView.backgroundColor = [UIColor whiteColor];
|
botomlineView.backgroundColor = [UIColor whiteColor];
|
||||||
[self.view addSubview:botomlineView];
|
[self.view addSubview:botomlineView];
|
||||||
|
|||||||
@@ -19,6 +19,8 @@
|
|||||||
#import "LXCustomSwith.h"
|
#import "LXCustomSwith.h"
|
||||||
#import "GiGaUserDefault.h"
|
#import "GiGaUserDefault.h"
|
||||||
#import "GiGaServerConfig.h"
|
#import "GiGaServerConfig.h"
|
||||||
|
#import "GiGaQuestionVC.h"
|
||||||
|
#import "GiGaBaseAPiRequest.h"
|
||||||
|
|
||||||
//弹幕控制器
|
//弹幕控制器
|
||||||
@interface GiGaFlingCommitVC ()
|
@interface GiGaFlingCommitVC ()
|
||||||
@@ -28,6 +30,9 @@
|
|||||||
//@property (nonatomic,strong) LXCustomSwith *danmuSwitch;
|
//@property (nonatomic,strong) LXCustomSwith *danmuSwitch;
|
||||||
//开启弹幕按钮
|
//开启弹幕按钮
|
||||||
@property(nonatomic,strong) UIButton *openDanmuButton;
|
@property(nonatomic,strong) UIButton *openDanmuButton;
|
||||||
|
|
||||||
|
@property(nonatomic,strong) UIButton *testBtn;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation GiGaFlingCommitVC
|
@implementation GiGaFlingCommitVC
|
||||||
@@ -51,6 +56,32 @@
|
|||||||
//
|
//
|
||||||
//}
|
//}
|
||||||
|
|
||||||
|
- (UIButton *)testBtn
|
||||||
|
{
|
||||||
|
|
||||||
|
if (!_testBtn) {
|
||||||
|
_testBtn = [UIButton buttonWithType:UIButtonTypeCustom];
|
||||||
|
[_testBtn setTitle:@"" forState:UIControlStateNormal];
|
||||||
|
[_testBtn addTarget:self action:@selector(testBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
||||||
|
//_testBtn.backgroundColor = [UIColor redColor];
|
||||||
|
_testBtn.frame = CGRectMake(30, 476 + PhoneX_TopMargin,KMainW - 30 *2, 50);
|
||||||
|
}
|
||||||
|
|
||||||
|
return _testBtn;
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)testBtnAction{
|
||||||
|
//GIGA_ShowToast(@"请先关闭弹幕");
|
||||||
|
[self dismissViewControllerAnimated:YES completion:^{
|
||||||
|
|
||||||
|
[[LXDanMuManager shareInstance] destory];
|
||||||
|
[self destorySocket];
|
||||||
|
NC_POST_NAME_OBJECT(@"UserCloseChatRoomAction", nil);
|
||||||
|
NC_POST_NAME_OBJECT(@"flingcommitViewTestAreaAction", nil);
|
||||||
|
}];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
- (UIButton *)openDanmuButton{
|
- (UIButton *)openDanmuButton{
|
||||||
if (!_openDanmuButton) {
|
if (!_openDanmuButton) {
|
||||||
_openDanmuButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
_openDanmuButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
||||||
@@ -118,17 +149,25 @@
|
|||||||
- (void)viewDidLoad {
|
- (void)viewDidLoad {
|
||||||
|
|
||||||
[super viewDidLoad];
|
[super viewDidLoad];
|
||||||
|
[self.view addSubview:self.testBtn];
|
||||||
// Do any additional setup after loading the view.
|
// Do any additional setup after loading the view.
|
||||||
[self.view addSubview: self.commitInputView];
|
[self.view addSubview: self.commitInputView];
|
||||||
// [self.view addSubview:self.danmuSwitch];
|
// [self.view addSubview:self.danmuSwitch];
|
||||||
// [self.view bringSubviewToFront:self.danmuSwitch];
|
// [self.view bringSubviewToFront:self.danmuSwitch];
|
||||||
[self.view addSubview:self.openDanmuButton];
|
[self.view addSubview:self.openDanmuButton];
|
||||||
|
[self.view addSubview:self.testBtn];
|
||||||
|
|
||||||
weakify(self);
|
weakify(self);
|
||||||
|
|
||||||
self.commitInputView.SendCommentHandler = ^(NSString *content) {
|
self.commitInputView.SendCommentHandler = ^(NSString *content) {
|
||||||
GILog(@"发送->:%@",content);
|
GILog(@"发送->:%@",content);
|
||||||
|
|
||||||
|
BOOL isUserLogin = [GiGaUserDefault isUserLogin];
|
||||||
|
if (!isUserLogin) {
|
||||||
|
[GiGaBaseAPiRequest userTokenTimeOutGologinFromVC:weakSelf];
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
NSArray *arr = @[@{
|
NSArray *arr = @[@{
|
||||||
@"content":content,
|
@"content":content,
|
||||||
@"room":@"",
|
@"room":@"",
|
||||||
@@ -143,11 +182,8 @@
|
|||||||
//socket
|
//socket
|
||||||
[self connetction];
|
[self connetction];
|
||||||
|
|
||||||
//显示隐藏输入框
|
|
||||||
BOOL isUserLogin = [GiGaUserDefault isUserLogin];
|
|
||||||
if (!isUserLogin) {
|
|
||||||
self.commitInputView.hidden = YES;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -35,11 +35,14 @@
|
|||||||
#import "GIGaMaskShareViewController.h"
|
#import "GIGaMaskShareViewController.h"
|
||||||
#import "MaskHistryRecord.h"
|
#import "MaskHistryRecord.h"
|
||||||
#import "MaskTimeTopAnimationView.h"
|
#import "MaskTimeTopAnimationView.h"
|
||||||
|
#import <AudioToolbox/AudioToolbox.h>
|
||||||
|
#import "GIGaDateHelper.h"
|
||||||
|
|
||||||
@interface GiGaMaskTaskViewController ()<MaskCirCularProGressViewDelegate,MaskTimeTextViewDelegate>
|
@interface GiGaMaskTaskViewController ()<MaskCirCularProGressViewDelegate,MaskTimeTextViewDelegate>
|
||||||
{
|
{
|
||||||
AVAudioPlayer *_musicPalyer;
|
|
||||||
|
AVAudioPlayer *_startMaskMusic;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@property (nonatomic,strong) UIButton *rightNavUserBtn;
|
@property (nonatomic,strong) UIButton *rightNavUserBtn;
|
||||||
@@ -68,7 +71,7 @@
|
|||||||
- (MaskTimeTopAnimationView *)animLabeview{
|
- (MaskTimeTopAnimationView *)animLabeview{
|
||||||
if (!_animLabeview) {
|
if (!_animLabeview) {
|
||||||
_animLabeview = [[MaskTimeTopAnimationView alloc] initWithFrame:CGRectMake(0,20+ PhoneX_TopMargin,KMainW - 40 * 2, 44)];
|
_animLabeview = [[MaskTimeTopAnimationView alloc] initWithFrame:CGRectMake(0,20+ PhoneX_TopMargin,KMainW - 40 * 2, 44)];
|
||||||
NSString *text = @"长时间的使用面膜可能会对您的皮肤造成伤害";
|
NSString *text = @"配合测试结果的时间敷面膜效果更好哦";
|
||||||
[_animLabeview animationWithTexts:[NSArray arrayWithObjects:text,@"面膜时间",text, nil]];
|
[_animLabeview animationWithTexts:[NSArray arrayWithObjects:text,@"面膜时间",text, nil]];
|
||||||
|
|
||||||
//_animLabeview.backgroundColor = [UIColor blueColor];
|
//_animLabeview.backgroundColor = [UIColor blueColor];
|
||||||
@@ -123,7 +126,6 @@
|
|||||||
return _hairImageView;
|
return _hairImageView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//人脸
|
//人脸
|
||||||
- (UIImageView *)faceView{
|
- (UIImageView *)faceView{
|
||||||
if (!_faceView) {
|
if (!_faceView) {
|
||||||
@@ -177,10 +179,19 @@
|
|||||||
if (!_startTestButton) {
|
if (!_startTestButton) {
|
||||||
_startTestButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
_startTestButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
||||||
[_startTestButton setBackgroundImage:[UIImage imageNamed:@"btn_start_test"] forState:UIControlStateNormal];
|
[_startTestButton setBackgroundImage:[UIImage imageNamed:@"btn_start_test"] forState:UIControlStateNormal];
|
||||||
NSAttributedString *title = [GiGaHelper stringWithText:@"测试肤质" textColor:[UIColor whiteColor] textFont:GIGA_TEXTFONTBOLD(18) leterSpace:0];
|
BOOL istest = [GiGaUserDefault isUserTest];
|
||||||
|
NSString *text = nil;
|
||||||
|
|
||||||
|
if (istest) {
|
||||||
|
text = @"重新测试";
|
||||||
|
}else{
|
||||||
|
text = @"测试肤质";
|
||||||
|
}
|
||||||
|
NSAttributedString *title = [GiGaHelper stringWithText:text textColor:[UIColor whiteColor] textFont:GIGA_TEXTFONTBOLD(18) leterSpace:0];
|
||||||
[_startTestButton setAttributedTitle:title forState:UIControlStateNormal];
|
[_startTestButton setAttributedTitle:title forState:UIControlStateNormal];
|
||||||
[_startTestButton addTarget:self action:@selector(testBtnAcion:) forControlEvents:UIControlEventTouchUpInside];
|
[_startTestButton addTarget:self action:@selector(testBtnAcion:) forControlEvents:UIControlEventTouchUpInside];
|
||||||
}
|
}
|
||||||
|
|
||||||
return _startTestButton;
|
return _startTestButton;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -203,20 +214,20 @@
|
|||||||
}else{
|
}else{
|
||||||
GiGaFlingVC.modalPresentationStyle = UIModalPresentationCurrentContext;
|
GiGaFlingVC.modalPresentationStyle = UIModalPresentationCurrentContext;
|
||||||
}
|
}
|
||||||
GiGaFlingVC.view.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.3];
|
GiGaFlingVC.view.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.4];
|
||||||
[self presentViewController:GiGaFlingVC animated:NO completion:nil];
|
[self presentViewController:GiGaFlingVC animated:NO completion:nil];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark - 生命周期
|
#pragma mark - 生命周期
|
||||||
-(void)viewWillAppear:(BOOL)animated{
|
-(void)viewWillAppear:(BOOL)animated{
|
||||||
|
|
||||||
[super viewWillAppear:animated];
|
[super viewWillAppear:animated];
|
||||||
//取消导航对内容下移影响
|
//取消导航对内容下移影响
|
||||||
[self.navigationController.navigationBar setTranslucent:YES];
|
[self.navigationController.navigationBar setTranslucent:YES];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
-(void)viewDidAppear:(BOOL)animated{
|
-(void)viewDidAppear:(BOOL)animated{
|
||||||
[super viewDidAppear:animated];
|
[super viewDidAppear:animated];
|
||||||
if([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
|
if([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
|
||||||
@@ -229,12 +240,12 @@
|
|||||||
if (showAppGaurd == NO) {
|
if (showAppGaurd == NO) {
|
||||||
[self showAPPappGaurdView];
|
[self showAPPappGaurdView];
|
||||||
}
|
}
|
||||||
|
// [self showUserGaurdView];
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)viewWillDisappear:(BOOL)animated{
|
-(void)viewWillDisappear:(BOOL)animated{
|
||||||
|
|
||||||
[super viewWillDisappear:animated];
|
[super viewWillDisappear:animated];
|
||||||
[self.navigationController.navigationBar setTranslucent:NO];
|
[self.navigationController.navigationBar setTranslucent:NO];
|
||||||
if([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
|
if([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
|
||||||
@@ -248,7 +259,25 @@
|
|||||||
[self setUpNav];
|
[self setUpNav];
|
||||||
[self initUI];
|
[self initUI];
|
||||||
[self addNotify];
|
[self addNotify];
|
||||||
[self creatBackGroundMusic];
|
//[self creatBackGroundMusic];
|
||||||
|
[self creatMaskTimeSatrtMusic];
|
||||||
|
//判断是否有倒数计时
|
||||||
|
[self digIsMasking];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)digIsMasking{
|
||||||
|
AppDelegate *delegate =(AppDelegate *) [[UIApplication sharedApplication] delegate];
|
||||||
|
NSString *st = nil;
|
||||||
|
if (delegate.isMasking) {
|
||||||
|
NSLog(@"倒计时中");
|
||||||
|
st = @"YES";
|
||||||
|
[self animaMask];
|
||||||
|
|
||||||
|
}else{
|
||||||
|
st = @"NO";
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -257,7 +286,7 @@
|
|||||||
-(void)maskupSwipeGesture{
|
-(void)maskupSwipeGesture{
|
||||||
[self animaMask];
|
[self animaMask];
|
||||||
}
|
}
|
||||||
#pragma mark 点击手势
|
#pragma mark 点击手势面膜时间
|
||||||
-(void)maskTapAction{
|
-(void)maskTapAction{
|
||||||
[self animaMask];
|
[self animaMask];
|
||||||
}
|
}
|
||||||
@@ -275,18 +304,19 @@
|
|||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
if (buttonIndex == 1) {
|
if (buttonIndex == 1) {
|
||||||
[self.cicleProgressView stop];
|
[self.cicleProgressView stop];
|
||||||
|
//手动结束时结束peding通知
|
||||||
|
[[GiGaLocalNotificationManager localNotifiationCenter] cancelAllLocalNoitification];
|
||||||
|
[GIGaDateHelper removeStartDate];
|
||||||
|
[GIGaDateHelper saveisMaskingflag:NO];
|
||||||
[self maskTimeEnd];
|
[self maskTimeEnd];
|
||||||
}
|
}
|
||||||
}];
|
}];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#pragma mark - 开始面膜时间动画 合并
|
#pragma mark - 开始面膜时间动画 合并
|
||||||
-(void)animaMask{
|
-(void)animaMask{
|
||||||
|
|
||||||
|
|
||||||
self.swipeGaurdimagView.hidden = YES;
|
self.swipeGaurdimagView.hidden = YES;
|
||||||
self.startMaskButton.hidden = YES;
|
self.startMaskButton.hidden = YES;
|
||||||
[self.view layoutIfNeeded];
|
[self.view layoutIfNeeded];
|
||||||
@@ -304,7 +334,6 @@
|
|||||||
make.top.mas_equalTo(self.attachPoint.y - 87);
|
make.top.mas_equalTo(self.attachPoint.y - 87);
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
|
||||||
[self.maskImageView setImage:[UIImage imageNamed:@"masking_img_mask"]];
|
[self.maskImageView setImage:[UIImage imageNamed:@"masking_img_mask"]];
|
||||||
|
|
||||||
[self.view layoutIfNeeded];
|
[self.view layoutIfNeeded];
|
||||||
@@ -348,7 +377,6 @@
|
|||||||
self.cicleProgressView.hidden = YES;
|
self.cicleProgressView.hidden = YES;
|
||||||
self.swipeGaurdimagView.hidden = NO;
|
self.swipeGaurdimagView.hidden = NO;
|
||||||
self.startMaskButton.hidden = NO;
|
self.startMaskButton.hidden = NO;
|
||||||
|
|
||||||
[self.view layoutIfNeeded];
|
[self.view layoutIfNeeded];
|
||||||
[UIView animateWithDuration:1.0 animations:^{
|
[UIView animateWithDuration:1.0 animations:^{
|
||||||
|
|
||||||
@@ -463,12 +491,28 @@
|
|||||||
NSError *payerError;
|
NSError *payerError;
|
||||||
NSURL *musicUrl = [[NSURL alloc] initWithString:[[NSBundle mainBundle] pathForResource:@"pomodoSound" ofType:@"m4a"]] ;
|
NSURL *musicUrl = [[NSURL alloc] initWithString:[[NSBundle mainBundle] pathForResource:@"pomodoSound" ofType:@"m4a"]] ;
|
||||||
AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:musicUrl error:&payerError];
|
AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:musicUrl error:&payerError];
|
||||||
player.numberOfLoops = -1;
|
player.numberOfLoops = -1;//-1 无限
|
||||||
_musicPalyer = player;
|
player.volume = 0;
|
||||||
|
//_musicPalyer = player;
|
||||||
[[AVAudioSession sharedInstance] setActive:YES error:nil];
|
[[AVAudioSession sharedInstance] setActive:YES error:nil];
|
||||||
//设置后台模式和锁屏模式下依然能够播放
|
//设置后台模式和锁屏模式下依然能够播放
|
||||||
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionMixWithOthers error:nil];
|
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionMixWithOthers error:nil];
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark 开始面膜时间提示音🎵
|
||||||
|
-(void)creatMaskTimeSatrtMusic{
|
||||||
|
|
||||||
|
//初始化音频播放器
|
||||||
|
NSError *payerError;
|
||||||
|
NSURL *musicUrl = [[NSURL alloc] initWithString:[[NSBundle mainBundle] pathForResource:@"ogg_btn" ofType:@"mp3"]] ;
|
||||||
|
AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:musicUrl error:&payerError];
|
||||||
|
player.numberOfLoops = 2;
|
||||||
|
player.volume = 0.5;
|
||||||
|
|
||||||
|
_startMaskMusic = player;
|
||||||
|
[[AVAudioSession sharedInstance] setActive:YES error:nil];
|
||||||
|
//设置后台模式和锁屏模式下依然能够播放
|
||||||
|
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionMixWithOthers error:nil];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark 开始面膜时间
|
#pragma mark 开始面膜时间
|
||||||
@@ -478,22 +522,19 @@
|
|||||||
[self sendBengainMaskTime];
|
[self sendBengainMaskTime];
|
||||||
[self createInputView]; //出现弹幕
|
[self createInputView]; //出现弹幕
|
||||||
AppDelegate *delegate =(AppDelegate *) [[UIApplication sharedApplication] delegate];
|
AppDelegate *delegate =(AppDelegate *) [[UIApplication sharedApplication] delegate];
|
||||||
if (delegate.isMasking) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
delegate.isMasking = YES;
|
|
||||||
[_musicPalyer play];
|
|
||||||
[self setBackGroundPlayingInfo];//锁屏音频信息
|
|
||||||
|
|
||||||
//总时间隔 s
|
|
||||||
NSTimeInterval timeInterVal = [GiGaUserDefault getUserMaskeTime];
|
NSTimeInterval timeInterVal = [GiGaUserDefault getUserMaskeTime];
|
||||||
|
|
||||||
[self.cicleProgressView startWith:timeInterVal];
|
[self.cicleProgressView startWith:timeInterVal];
|
||||||
|
|
||||||
|
delegate.isMasking = YES;
|
||||||
|
[_startMaskMusic play];
|
||||||
|
//[_musicPalyer play];
|
||||||
|
// [self setBackGroundPlayingInfo];//锁屏音频信息
|
||||||
|
|
||||||
//底部弹窗
|
//底部弹窗
|
||||||
[self showWaringView];
|
//[self showWaringView];
|
||||||
|
|
||||||
//app 前台时收到本地通知showAlert 后台时通知提醒
|
//app 前台时收到本地通知showAlert 后台时通知提醒
|
||||||
// [[GiGaLocalNotificationManager localNotifiationCenter] sendLocalNotification:@"本地推送" fireTimeInterval:timeInterVal alertAction:@"测试面膜时间" withIdentifier:kLOCALNotifiID_MASKETIMEEND];
|
[[GiGaLocalNotificationManager localNotifiationCenter] sendLocalNotification:@"面膜时间结束" fireTimeInterval:timeInterVal alertAction:@"面膜时间提醒" withIdentifier:kLOCALNotifiID_MASKETIMEEND];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -538,19 +579,30 @@
|
|||||||
|
|
||||||
#pragma mark 面膜时间结束
|
#pragma mark 面膜时间结束
|
||||||
-(void)maskTimeEnd{
|
-(void)maskTimeEnd{
|
||||||
|
|
||||||
self.openDanmuButton.hidden = YES;
|
self.openDanmuButton.hidden = YES;
|
||||||
[self sendEndMaskTime];
|
[self sendEndMaskTime];
|
||||||
NC_POST_NAME_OBJECT(kUserNoti_MASKEND, nil);
|
NC_POST_NAME_OBJECT(kUserNoti_MASKEND, nil);
|
||||||
//面膜时间结束时设置 全局变量 不再发送本地通知 提醒
|
//面膜时间结束时设置 全局变量 不再发送本地通知 提醒
|
||||||
AppDelegate *delegate =(AppDelegate *) [[UIApplication sharedApplication] delegate];
|
AppDelegate *delegate =(AppDelegate *) [[UIApplication sharedApplication] delegate];
|
||||||
delegate.isMasking = NO;
|
delegate.isMasking = NO;
|
||||||
[_musicPalyer stop];
|
|
||||||
|
//[_musicPalyer stop];
|
||||||
|
|
||||||
|
//震动 需用户手动开启震动模式
|
||||||
|
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
|
||||||
//复原动画
|
//复原动画
|
||||||
[self endMaskAnimation];
|
[self endMaskAnimation];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark 开始测试
|
#pragma mark 开始测试
|
||||||
-(void)testBtnAcion:(UIButton *)btn{
|
-(void)testBtnAcion:(UIButton *)btn{
|
||||||
|
|
||||||
|
// GIGaMaskShareViewController *shareVC = [[GIGaMaskShareViewController alloc] init];
|
||||||
|
// shareVC.maskTimeId = self.currentMaskId;
|
||||||
|
// [self.navigationController pushViewController:shareVC animated:YES];
|
||||||
|
// return;
|
||||||
// NSDictionary *dic = @{
|
// NSDictionary *dic = @{
|
||||||
// @"dryness":@"0.41",
|
// @"dryness":@"0.41",
|
||||||
// @"drynessPercent":@"41%",
|
// @"drynessPercent":@"41%",
|
||||||
@@ -566,9 +618,13 @@
|
|||||||
|
|
||||||
// [self showAlertGoShareMaskTime];
|
// [self showAlertGoShareMaskTime];
|
||||||
|
|
||||||
|
[self startTest];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)startTest{
|
||||||
GiGaQuestionVC *questionVC = [[GiGaQuestionVC alloc] init];
|
GiGaQuestionVC *questionVC = [[GiGaQuestionVC alloc] init];
|
||||||
[self.navigationController pushViewController:questionVC animated:YES];
|
[self.navigationController pushViewController:questionVC animated:YES];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)addNotify{
|
-(void)addNotify{
|
||||||
@@ -583,7 +639,21 @@
|
|||||||
|
|
||||||
//用户关闭弹幕聊天
|
//用户关闭弹幕聊天
|
||||||
NC_ADD_TARGET_NAME_OBJECT(self, @selector(userCloseChatRoomAction), @"UserCloseChatRoomAction", nil);
|
NC_ADD_TARGET_NAME_OBJECT(self, @selector(userCloseChatRoomAction), @"UserCloseChatRoomAction", nil);
|
||||||
|
//
|
||||||
|
NC_ADD_TARGET_NAME_OBJECT(self, @selector(flingcommitViewTestAreaAction), @"flingcommitViewTestAreaAction", nil);
|
||||||
|
//测试肤质flag 状态更新
|
||||||
|
NC_ADD_TARGET_NAME_OBJECT(self, @selector(testfalgUpdateAction), @"testfalgUpdate", nil);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//弹幕界面点击测试按钮区域
|
||||||
|
-(void)flingcommitViewTestAreaAction{
|
||||||
|
[self startTest];
|
||||||
|
}
|
||||||
|
//测试按钮状态更新通知
|
||||||
|
-(void)testfalgUpdateAction{
|
||||||
|
NSAttributedString *title = [GiGaHelper stringWithText:@"重新测试" textColor:[UIColor whiteColor] textFont:GIGA_TEXTFONTBOLD(18) leterSpace:0];
|
||||||
|
[_startTestButton setAttributedTitle:title forState:UIControlStateNormal];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -597,6 +667,8 @@
|
|||||||
#pragma mark 新手引导蒙版消失
|
#pragma mark 新手引导蒙版消失
|
||||||
-(void)guardViewDissmiss{
|
-(void)guardViewDissmiss{
|
||||||
|
|
||||||
|
self.swipeGaurdimagView.hidden = NO;
|
||||||
|
self.startMaskButton.hidden = NO;
|
||||||
[self showWaringView];
|
[self showWaringView];
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -620,11 +692,15 @@
|
|||||||
NC_REMOVE_NAME(self, kUserLogOutNotify, nil);
|
NC_REMOVE_NAME(self, kUserLogOutNotify, nil);
|
||||||
NC_REMOVE_NAME(self, kUserLoginSuccessNoti, nil);
|
NC_REMOVE_NAME(self, kUserLoginSuccessNoti, nil);
|
||||||
NC_REMOVE_NAME(self, @"UserCloseChatRoomAction", nil);
|
NC_REMOVE_NAME(self, @"UserCloseChatRoomAction", nil);
|
||||||
|
NC_REMOVE_NAME(self, @"flingcommitViewTestAreaAction",nil);
|
||||||
|
NC_REMOVE_NAME(self,@"testfalgUpdate",nil);
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark 新手引导
|
#pragma mark 新手引导
|
||||||
-(void)showUserGaurdView{
|
-(void)showUserGaurdView{
|
||||||
|
|
||||||
|
self.swipeGaurdimagView.hidden = YES;
|
||||||
|
self.startMaskButton.hidden = YES;
|
||||||
UserGuardViewController *userGuardVC = [[UserGuardViewController alloc] init];
|
UserGuardViewController *userGuardVC = [[UserGuardViewController alloc] init];
|
||||||
if (ISIOS8) {
|
if (ISIOS8) {
|
||||||
userGuardVC.modalPresentationStyle = UIModalPresentationOverCurrentContext;
|
userGuardVC.modalPresentationStyle = UIModalPresentationOverCurrentContext;
|
||||||
@@ -680,7 +756,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
self.navigationController.navigationBar.backgroundColor = [UIColor whiteColor];
|
self.navigationController.navigationBar.backgroundColor = [UIColor whiteColor];
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -688,8 +763,11 @@
|
|||||||
-(void)refreshUserIcon:(NSString *)imageUrl{
|
-(void)refreshUserIcon:(NSString *)imageUrl{
|
||||||
|
|
||||||
NSURL *url = [NSURL URLWithString:imageUrl];
|
NSURL *url = [NSURL URLWithString:imageUrl];
|
||||||
[self.rightNavUserBtn sd_setImageWithURL:url forState:UIControlStateNormal];
|
// [self.rightNavUserBtn sd_setImageWithURL:url forState:UIControlStateNormal];
|
||||||
|
|
||||||
|
[self.rightNavUserBtn sd_setImageWithURL:url forState:UIControlStateNormal placeholderImage:[UIImage imageNamed:@"nav_circle_avatar"] completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {
|
||||||
|
|
||||||
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark 消息 action
|
#pragma mark 消息 action
|
||||||
@@ -707,7 +785,6 @@
|
|||||||
GiGaUserLoginVC *userlogInVC= [[GiGaUserLoginVC alloc] init];
|
GiGaUserLoginVC *userlogInVC= [[GiGaUserLoginVC alloc] init];
|
||||||
GiGaBaseNavViewController *baseNav = [[GiGaBaseNavViewController alloc] initWithRootViewController:userlogInVC];
|
GiGaBaseNavViewController *baseNav = [[GiGaBaseNavViewController alloc] initWithRootViewController:userlogInVC];
|
||||||
[self presentViewController:baseNav animated:YES completion:nil];
|
[self presentViewController:baseNav animated:YES completion:nil];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -733,6 +810,7 @@
|
|||||||
[UIView animateWithDuration:0.4 animations:^{
|
[UIView animateWithDuration:0.4 animations:^{
|
||||||
self.waringView.frame = CGRectMake(0,CGRectGetMaxY(self.view.frame) - 44 - PhoneX_BottomMargin, self.view.frame.size.width, 44);
|
self.waringView.frame = CGRectMake(0,CGRectGetMaxY(self.view.frame) - 44 - PhoneX_BottomMargin, self.view.frame.size.width, 44);
|
||||||
}];
|
}];
|
||||||
|
|
||||||
[self.waringView showView];
|
[self.waringView showView];
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -774,7 +852,6 @@
|
|||||||
if (user.headImgUrl && ![user.headImgUrl isKindOfClass:[NSNull class]] ) {
|
if (user.headImgUrl && ![user.headImgUrl isKindOfClass:[NSNull class]] ) {
|
||||||
[self refreshUserIcon:user.headImgUrl];
|
[self refreshUserIcon:user.headImgUrl];
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark 去分享
|
#pragma mark 去分享
|
||||||
@@ -799,7 +876,6 @@
|
|||||||
[self.navigationController pushViewController:shareVC animated:YES];
|
[self.navigationController pushViewController:shareVC animated:YES];
|
||||||
}
|
}
|
||||||
}];
|
}];
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -817,8 +893,10 @@
|
|||||||
|
|
||||||
BOOL isUserLogin = [GiGaUserDefault isUserLogin];
|
BOOL isUserLogin = [GiGaUserDefault isUserLogin];
|
||||||
if (isUserLogin) {
|
if (isUserLogin) {
|
||||||
|
|
||||||
NSTimeInterval timeInterVal = [GiGaUserDefault getUserMaskeTime];
|
NSTimeInterval timeInterVal = [GiGaUserDefault getUserMaskeTime];
|
||||||
NSString *minute = [NSString stringWithFormat:@"%.f",timeInterVal /60];
|
NSString *minute = [NSString stringWithFormat:@"%.1f",timeInterVal / 60];
|
||||||
|
|
||||||
GiGaBaseAPiRequest *api = [GiGaBaseAPiRequest initWithRequestPath:KApiBeginMaskTime method:RequestPostMethod parms:@{@"minute":minute}];
|
GiGaBaseAPiRequest *api = [GiGaBaseAPiRequest initWithRequestPath:KApiBeginMaskTime method:RequestPostMethod parms:@{@"minute":minute}];
|
||||||
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
||||||
if (result.success) {
|
if (result.success) {
|
||||||
@@ -839,7 +917,6 @@
|
|||||||
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
||||||
if (result.success) {
|
if (result.success) {
|
||||||
GILog(@"%@",@"面膜时间APi结束");
|
GILog(@"%@",@"面膜时间APi结束");
|
||||||
|
|
||||||
}
|
}
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
@@ -851,4 +928,5 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -8,8 +8,10 @@
|
|||||||
|
|
||||||
#import "GiGaBaseViewController.h"
|
#import "GiGaBaseViewController.h"
|
||||||
#import "GiGaShareModel.h"
|
#import "GiGaShareModel.h"
|
||||||
|
#import "GiGaLoaclImageModel.h"
|
||||||
|
|
||||||
@interface ShareViewController : GiGaBaseViewController
|
@interface ShareViewController : GiGaBaseViewController
|
||||||
@property(nonatomic,strong) GiGaShareModel *model;
|
@property(nonatomic,strong) GiGaShareModel *model;
|
||||||
|
@property(nonatomic,strong) GiGaLoaclImageModel *localModel;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -20,34 +20,35 @@
|
|||||||
#import "UIImage+ShotImage.h"
|
#import "UIImage+ShotImage.h"
|
||||||
#import "GiGaBaseAPiRequest.h"
|
#import "GiGaBaseAPiRequest.h"
|
||||||
#import "UIImageView+WebCache.h"
|
#import "UIImageView+WebCache.h"
|
||||||
|
#import "GIGaSharePageViewController.h"
|
||||||
|
#import "LXCustomActionSheet.h"
|
||||||
|
|
||||||
@interface ShareViewController ()<UITableViewDelegate,UITableViewDataSource,UIImagePickerControllerDelegate,UINavigationControllerDelegate>
|
@interface ShareViewController ()<UITableViewDelegate,UITableViewDataSource,UIImagePickerControllerDelegate,UINavigationControllerDelegate>
|
||||||
@property(nonatomic,strong) UITableView *tab;
|
@property(nonatomic,strong) UITableView *tab;
|
||||||
@property(nonatomic,strong) UIImageView *backimageview ;
|
@property(nonatomic,strong) UIImageView *backimageview ;
|
||||||
@property(nonatomic) int curentImageIndex ;
|
|
||||||
@property(nonatomic,strong) NSArray *descArr;
|
@property(nonatomic,strong) NSArray *descArr;
|
||||||
|
//
|
||||||
|
@property(nonatomic,strong)NSMutableArray *viewControllers;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation ShareViewController
|
@implementation ShareViewController
|
||||||
|
|
||||||
|
|
||||||
- (void)viewDidLoad {
|
- (void)viewDidLoad {
|
||||||
[super viewDidLoad];
|
[super viewDidLoad];
|
||||||
|
|
||||||
_curentImageIndex = 5;
|
|
||||||
[self creatTabUI];
|
[self creatTabUI];
|
||||||
self.descArr = @[@"生活不易,必须美丽",@"长夜漫漫,不如面膜时间",@"敷片面膜,人间值得",@"打开面膜时间,撰写你与美丽的故事",@"人越美丽,责任越大",@"吃得苦中苦,方为人上人",@"该放弃的决不挽留,该留住的决不放手"];
|
self.descArr = @[@"生活不易,必须美丽",@"长夜漫漫,不如面膜时间",@"敷片面膜,人间值得",@"打开面膜时间,撰写你与美丽的故事",@"人越美丽,责任越大",@"吃得苦中苦,方为人上人",@"该放弃的决不挽留,该留住的决不放手"];
|
||||||
|
|
||||||
UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom];
|
UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom];
|
||||||
backBtn.frame = CGRectMake(20,20 +PhoneX_TopMargin, 40, 40);
|
backBtn.frame = CGRectMake(15,20 +PhoneX_TopMargin, 40, 40);
|
||||||
[backBtn setImage:[UIImage imageNamed:@"btn_moment_back"] forState:UIControlStateNormal];
|
[backBtn setImage:[UIImage imageNamed:@"btn_moment_back"] forState:UIControlStateNormal];
|
||||||
|
|
||||||
[backBtn addTarget:self action:@selector(backBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
[backBtn addTarget:self action:@selector(backBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
||||||
[self.view addSubview:backBtn];
|
[self.view addSubview:backBtn];
|
||||||
|
|
||||||
|
|
||||||
[self creatBtns];
|
[self creatBtns];
|
||||||
|
|
||||||
NC_ADD_TARGET_NAME_OBJECT(self, @selector(usershareSuccessNoti), NC_UseShareSuccessNoti, nil);
|
NC_ADD_TARGET_NAME_OBJECT(self, @selector(usershareSuccessNoti), NC_UseShareSuccessNoti, nil);
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -69,10 +70,15 @@
|
|||||||
backimageview.contentMode = UIViewContentModeScaleAspectFill;
|
backimageview.contentMode = UIViewContentModeScaleAspectFill;
|
||||||
backimageview.frame = CGRectMake(0,0,self.view.frame.size.width, self.view.frame.size.height);
|
backimageview.frame = CGRectMake(0,0,self.view.frame.size.width, self.view.frame.size.height);
|
||||||
backimageview.userInteractionEnabled = YES;
|
backimageview.userInteractionEnabled = YES;
|
||||||
|
//默认背景 拍照 相册 或本地
|
||||||
|
if (self.localModel) {
|
||||||
|
backimageview.image = [UIImage imageNamed:self.localModel.localImageName];
|
||||||
|
}else{
|
||||||
|
|
||||||
backimageview.image = [GIGaUserFileHelper getUserShareImage:kUSERSHAREA_IMAGENAME];
|
backimageview.image = [GIGaUserFileHelper getUserShareImage:kUSERSHAREA_IMAGENAME];
|
||||||
|
}
|
||||||
|
|
||||||
self.backimageview = backimageview;
|
self.backimageview = backimageview;
|
||||||
|
|
||||||
self.tab.backgroundView = backimageview;
|
self.tab.backgroundView = backimageview;
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -91,8 +97,31 @@
|
|||||||
cell = [[[NSBundle mainBundle] loadNibNamed:@"MaskTimeShareViewCell" owner:self options:nil] lastObject];
|
cell = [[[NSBundle mainBundle] loadNibNamed:@"MaskTimeShareViewCell" owner:self options:nil] lastObject];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (self.localModel) {
|
||||||
|
//本地
|
||||||
|
cell.descLabe.text = self.localModel.desc;
|
||||||
|
if (self.localModel.descColorflag == 1) {
|
||||||
|
cell.descLabe.textColor = [UIColor whiteColor];
|
||||||
|
}else{
|
||||||
|
cell.descLabe.textColor = [UIColor blackColor];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (self.localModel.doingColorflag == 1) {
|
||||||
|
cell.doinglabel.textColor = [UIColor whiteColor];
|
||||||
|
}else if (self.localModel.descColorflag == 3){
|
||||||
|
cell.doinglabel.textColor = GIGARGB(170, 170, 170, 1);
|
||||||
|
}else{
|
||||||
|
cell.doinglabel.textColor = [UIColor blackColor];
|
||||||
|
}
|
||||||
|
cell.shareLabe.image = [UIImage imageNamed:self.localModel.shareLabeimageName];
|
||||||
|
|
||||||
|
|
||||||
|
}else{
|
||||||
//默认
|
//默认
|
||||||
cell.descLabe.text = self.descArr[self.curentImageIndex];
|
cell.descLabe.text = @"现在做些什么呢?";
|
||||||
|
}
|
||||||
|
|
||||||
return cell;
|
return cell;
|
||||||
|
|
||||||
}else if (indexPath.row == 1){
|
}else if (indexPath.row == 1){
|
||||||
@@ -112,13 +141,13 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
return cell;
|
return cell;
|
||||||
}
|
}else if (indexPath.row == 2){
|
||||||
else if (indexPath.row == 2){
|
|
||||||
MaskShareBoootomViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MaskShareBoootomViewCell"];
|
MaskShareBoootomViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MaskShareBoootomViewCell"];
|
||||||
if (!cell) {
|
if (!cell) {
|
||||||
cell = [[[NSBundle mainBundle] loadNibNamed:@"MaskShareBoootomViewCell" owner:self options:nil] lastObject];
|
cell = [[[NSBundle mainBundle] loadNibNamed:@"MaskShareBoootomViewCell" owner:self options:nil] lastObject];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return cell;
|
return cell;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -167,8 +196,8 @@
|
|||||||
[shareBtn addTarget:self action:@selector(shareBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
[shareBtn addTarget:self action:@selector(shareBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
||||||
shareBtn.layer.masksToBounds = YES;
|
shareBtn.layer.masksToBounds = YES;
|
||||||
shareBtn.layer.cornerRadius = 4;
|
shareBtn.layer.cornerRadius = 4;
|
||||||
|
|
||||||
[self.view addSubview:shareBtn];
|
[self.view addSubview:shareBtn];
|
||||||
|
|
||||||
[shareBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
[shareBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.size.mas_equalTo(CGSizeMake(120, 40));
|
make.size.mas_equalTo(CGSizeMake(120, 40));
|
||||||
make.bottom.mas_equalTo(self.view.mas_bottom).mas_offset(-45);
|
make.bottom.mas_equalTo(self.view.mas_bottom).mas_offset(-45);
|
||||||
@@ -176,6 +205,13 @@
|
|||||||
|
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
if (self.localModel) {
|
||||||
|
changeBtn.hidden = YES;
|
||||||
|
[shareBtn mas_updateConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.centerX.mas_equalTo(self.view.mas_centerX);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//更换背景
|
//更换背景
|
||||||
@@ -193,32 +229,11 @@
|
|||||||
case 1:
|
case 1:
|
||||||
{
|
{
|
||||||
//系统
|
//系统
|
||||||
self.curentImageIndex ++;
|
|
||||||
|
|
||||||
if (self.curentImageIndex > 6) {
|
|
||||||
|
|
||||||
self.curentImageIndex = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
NSArray *images = @[@"sharebg_1",@"sharebg_2",@"sharebg_3",@"sharebg_4",@"sharebg_5",@"sharebg_6",@"sharebg_7"];
|
|
||||||
|
|
||||||
[self.backimageview setImage:[UIImage imageNamed: images[self->_curentImageIndex]]];
|
|
||||||
|
|
||||||
MaskTimeShareViewCell *cell = [self.tab cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];
|
|
||||||
|
|
||||||
NSArray *shareimages = @[@"share_oneblack",@"share_one",@"share_one",@"share_one",@"share_one",@"share_one",@"share_one"];
|
|
||||||
|
|
||||||
NSArray*doingcolorS = @[[UIColor blackColor],GIGARGB(170, 170, 170, 1),[UIColor blackColor],[UIColor blackColor],[UIColor blackColor],[UIColor blackColor],[UIColor blackColor]];
|
|
||||||
|
|
||||||
cell.shareLabe.image = [UIImage imageNamed:shareimages[self.curentImageIndex]];
|
|
||||||
cell.doinglabel.textColor = doingcolorS[self.curentImageIndex];
|
|
||||||
|
|
||||||
NSArray *descArr = @[@"生活不易,必须美丽",@"长夜漫漫,不如面膜时间",@"敷片面膜,人间值得",@"打开面膜时间,撰写你与美丽的故事",@"人越美丽,责任越大",@"吃得苦中苦,方为人上人",@"该放弃的决不挽留,该留住的决不放手"];
|
|
||||||
NSArray *desColor = @[[UIColor whiteColor],[UIColor whiteColor],[UIColor blackColor],[UIColor whiteColor],[UIColor whiteColor],[UIColor whiteColor],[UIColor blackColor]];
|
|
||||||
cell.descLabe.text = descArr[self.curentImageIndex];
|
|
||||||
cell.descLabe.textColor = desColor[self.curentImageIndex];
|
|
||||||
|
|
||||||
|
GIGaSharePageViewController *share = [[GIGaSharePageViewController alloc] initWithControllers:self.viewControllers];
|
||||||
|
|
||||||
|
//share.model = self.model;
|
||||||
|
[self presentViewController:share animated:NO completion:nil];
|
||||||
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -249,22 +264,15 @@
|
|||||||
|
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
NSString *errorStr = @"应用相权册限受限,请在设置中启用";
|
NSString *errorStr = @"应用相册受限,请在设置中启用";
|
||||||
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
||||||
alertMaker.addActionCancelTitle(@"取消");
|
alertMaker.addActionCancelTitle(@"知道了");
|
||||||
alertMaker.addActionDefaultTitle(@"去开启");
|
//alertMaker.addActionDefaultTitle(@"去开启");
|
||||||
|
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
if (buttonIndex == 1) {
|
|
||||||
NSURL *url = [NSURL URLWithString:@"prefs:root=Photos"];
|
|
||||||
if ([[UIApplication sharedApplication] canOpenURL:url]) {
|
|
||||||
[[UIApplication sharedApplication] openURL:url];
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//拍照
|
//拍照
|
||||||
@@ -279,21 +287,12 @@
|
|||||||
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
|
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
|
||||||
NSString *errorStr = @"应用相机权限受限,请在设置中启用";
|
NSString *errorStr = @"应用相机权限受限,请在设置中启用";
|
||||||
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
||||||
alertMaker.addActionCancelTitle(@"取消");
|
alertMaker.addActionCancelTitle(@"知道了");
|
||||||
alertMaker.addActionDefaultTitle(@"去开启");
|
//alertMaker.addActionDefaultTitle(@"去开启");
|
||||||
|
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
|
|
||||||
if (buttonIndex == 1) {
|
|
||||||
|
|
||||||
NSString *urlStr = @"App-Prefs:root=Photos";
|
|
||||||
if (@available(iOS 10.0, *)) {
|
|
||||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr] options:@{} completionHandler:nil];
|
|
||||||
} else {
|
|
||||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr]];
|
|
||||||
// Fallback on earlier versions
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}];
|
}];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -328,25 +327,27 @@
|
|||||||
GIGA_ShowToast(@"未安装微信");
|
GIGA_ShowToast(@"未安装微信");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
UIImage *image = [UIImage saveLongImage:self.tab];
|
UIImage *image = [UIImage saveLongImage:self.tab];
|
||||||
[self jxt_showActionSheetWithTitle:@"分享到微信" message:@"" appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
LXCustomActionSheet *sheet = [[LXCustomActionSheet alloc] initWithTitle:@"分享到微信" optionsArr:@[@"微信好友",@"朋友圈"] cancelTitle:@"取消" selectedBlock:^(NSInteger index) {
|
||||||
|
|
||||||
alertMaker.addActionDefaultTitle(@"微信好友");
|
if (index==0) {
|
||||||
alertMaker.addActionDefaultTitle(@"朋友圈");
|
|
||||||
alertMaker.addActionCancelTitle(@"取消");
|
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
|
||||||
|
|
||||||
if (buttonIndex==0) {
|
|
||||||
//好友
|
//好友
|
||||||
[self shareImagToWX:image scene:WXSceneSession];
|
[self shareImagToWX:image scene:WXSceneSession];
|
||||||
|
|
||||||
}else if (buttonIndex==1){
|
}else if (index==1){
|
||||||
|
|
||||||
// 朋友圈
|
// 朋友圈
|
||||||
[self shareImagToWX:image scene:WXSceneTimeline];
|
[self shareImagToWX:image scene:WXSceneTimeline];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} cancelBlock:^{
|
||||||
|
|
||||||
|
GILog(@"取消");
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
[sheet show];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)shareImagToWX:(UIImage *)image scene:(int)scene{
|
-(void)shareImagToWX:(UIImage *)image scene:(int)scene{
|
||||||
@@ -377,4 +378,33 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
- (NSMutableArray *)viewControllers {
|
||||||
|
if (!_viewControllers) {
|
||||||
|
_viewControllers = [NSMutableArray array];
|
||||||
|
NSArray *descArr = @[@"生活不易,必须美丽",@"长夜漫漫,不如面膜时间",@"敷片面膜,人间值得",@"打开面膜时间,撰写你与美丽的故事",@"人越美丽,责任越大",@"吃得苦中苦,方为人上人",@"该放弃的决不挽留,该留住的决不放手"];
|
||||||
|
NSArray *images = @[@"sharebg_1",@"sharebg_2",@"sharebg_3",@"sharebg_4",@"sharebg_5",@"sharebg_6",@"sharebg_7"];
|
||||||
|
NSArray *shareimages = @[@"share_oneblack",@"share_one",@"share_one",@"share_one",@"share_one",@"share_one",@"share_one"];
|
||||||
|
NSArray *desColor = @[@1,@1,@2,@1,@1,@1,@2];
|
||||||
|
|
||||||
|
NSArray*doingcolorS = @[@2,@3,@2,@2,@2,@2,@2];
|
||||||
|
|
||||||
|
for (int i = 0; i <descArr.count; i++) {
|
||||||
|
ShareViewController *vc = [[ShareViewController alloc] init];
|
||||||
|
GiGaLoaclImageModel *model = [[GiGaLoaclImageModel alloc] init];
|
||||||
|
model.desc = descArr[i];
|
||||||
|
model.localImageName = images[i];
|
||||||
|
model.shareLabeimageName = shareimages[i];
|
||||||
|
model.doingColorflag = [doingcolorS[i] integerValue];
|
||||||
|
model.descColorflag = [desColor[i] integerValue];
|
||||||
|
|
||||||
|
vc.localModel = model;
|
||||||
|
[_viewControllers addObject:vc];
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return _viewControllers;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -12,7 +12,9 @@
|
|||||||
#import "SHineLabel.h"
|
#import "SHineLabel.h"
|
||||||
|
|
||||||
@interface UserGuardViewController ()
|
@interface UserGuardViewController ()
|
||||||
|
|
||||||
@property(nonatomic,strong) UIImageView *handimage;
|
@property(nonatomic,strong) UIImageView *handimage;
|
||||||
|
@property(nonatomic,strong) UIImageView *upimage;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@@ -29,24 +31,39 @@
|
|||||||
|
|
||||||
-(void)creatUI{
|
-(void)creatUI{
|
||||||
|
|
||||||
// UIButton *dismisBtn= [UIButton buttonWithType:UIButtonTypeCustom];
|
// //face
|
||||||
|
// UIImageView *faceimage = [[UIImageView alloc] init];
|
||||||
|
// faceimage.image = [UIImage imageNamed:@"bg_img_face"];
|
||||||
|
// faceimage.contentMode = UIViewContentModeScaleAspectFit;
|
||||||
|
// [self.view addSubview:faceimage];
|
||||||
|
// [faceimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
//
|
//
|
||||||
// [dismisBtn setTitle:@"知道了" forState:UIControlStateNormal];
|
// make.size.mas_equalTo(CGSizeMake(99, 124));
|
||||||
// [dismisBtn setTintColor:[UIColor whiteColor]];
|
|
||||||
// dismisBtn.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.1];
|
|
||||||
// [dismisBtn addTarget:self action:@selector(dismisBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
|
||||||
// [self.view addSubview:dismisBtn];
|
|
||||||
//
|
|
||||||
// [dismisBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
||||||
// make.width.mas_equalTo(100);
|
|
||||||
// make.height.mas_equalTo(60);
|
|
||||||
// make.centerX.mas_equalTo(self.view.mas_centerX);
|
// make.centerX.mas_equalTo(self.view.mas_centerX);
|
||||||
// make.top.mas_equalTo(self.view.mas_top).offset(200);
|
// make.top.mas_equalTo(self.view.mas_top).offset(91);
|
||||||
|
//
|
||||||
// }];
|
// }];
|
||||||
|
//
|
||||||
|
// //mask
|
||||||
|
// UIImageView *maskimage = [[UIImageView alloc] init];
|
||||||
|
// maskimage.image = [UIImage imageNamed:@"mask_img_mask"];
|
||||||
|
// maskimage.contentMode = UIViewContentModeScaleAspectFit;
|
||||||
|
// [self.view addSubview:maskimage];
|
||||||
|
// [maskimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
// make.size.mas_equalTo(CGSizeMake(72, 87));
|
||||||
|
// make.centerX.mas_equalTo(self.view.mas_centerX);
|
||||||
|
// make.top.mas_equalTo(self.view.mas_top).offset(254);
|
||||||
|
//
|
||||||
|
// }];
|
||||||
|
|
||||||
|
// UIView *holdbackView = [[UIView alloc] initWithFrame:self.view.bounds];
|
||||||
|
// holdbackView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.4];
|
||||||
|
// [self.view addSubview:holdbackView];
|
||||||
|
|
||||||
//usergaurd_uphand
|
//usergaurd_uphand
|
||||||
UIImageView *upimage = [[UIImageView alloc] init];
|
UIImageView *upimage = [[UIImageView alloc] init];
|
||||||
upimage.image = [UIImage imageNamed:@"userguard_up"];
|
upimage.image = [UIImage imageNamed:@"userguard_up"];
|
||||||
|
self.upimage = upimage;
|
||||||
[self.view addSubview:upimage];
|
[self.view addSubview:upimage];
|
||||||
[upimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
[upimage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.height.and.with.mas_equalTo(20);
|
make.height.and.with.mas_equalTo(20);
|
||||||
@@ -85,6 +102,7 @@
|
|||||||
}];
|
}];
|
||||||
|
|
||||||
// [self creatnaima];
|
// [self creatnaima];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -100,12 +118,22 @@
|
|||||||
make.top.mas_equalTo(201);
|
make.top.mas_equalTo(201);
|
||||||
|
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
[self->_upimage mas_updateConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.top.mas_equalTo(201);
|
||||||
|
}];
|
||||||
|
|
||||||
[self.view layoutIfNeeded];
|
[self.view layoutIfNeeded];
|
||||||
|
|
||||||
} completion:^(BOOL finished) {
|
} completion:^(BOOL finished) {
|
||||||
|
|
||||||
[self->_handimage mas_updateConstraints:^(MASConstraintMaker *make) {
|
[self->_handimage mas_updateConstraints:^(MASConstraintMaker *make) {
|
||||||
make.top.mas_equalTo(301);
|
make.top.mas_equalTo(301);
|
||||||
|
|
||||||
|
}];
|
||||||
|
[self->_upimage mas_updateConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.top.mas_equalTo(298);
|
||||||
|
|
||||||
}];
|
}];
|
||||||
[self.view layoutIfNeeded];
|
[self.view layoutIfNeeded];
|
||||||
}];
|
}];
|
||||||
|
|||||||
@@ -237,12 +237,15 @@
|
|||||||
if (index > _currentModel.answerList.count) {
|
if (index > _currentModel.answerList.count) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
//答案整型非范围 设计稿范围展示!!
|
||||||
NSLog(@"答案下标:%d",index);
|
NSLog(@"答案下标:%d",index);
|
||||||
//修改答案默认下标
|
|
||||||
|
//返回时查看之前选中答案时使用
|
||||||
_currentModel.slidervalue = value;
|
_currentModel.slidervalue = value;
|
||||||
|
//选中记录 修改答案默认下标 最终答案选择根据defaultFlag 1 时为选中答案
|
||||||
[self changeAnswerDefaultflag:index];
|
[self changeAnswerDefaultflag:index];
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -330,8 +333,6 @@
|
|||||||
-(void)reloadViews{
|
-(void)reloadViews{
|
||||||
|
|
||||||
//刷新问题相关数据
|
//刷新问题相关数据
|
||||||
|
|
||||||
|
|
||||||
if (_page == self.questonArray.count) {
|
if (_page == self.questonArray.count) {
|
||||||
|
|
||||||
NSAttributedString *nextTitle = [[NSAttributedString alloc] initWithString:@"完成" attributes:@{NSFontAttributeName:[UIFont fontWithName:GIGA_FONTBOLD size:18],NSForegroundColorAttributeName:[UIColor whiteColor]}];
|
NSAttributedString *nextTitle = [[NSAttributedString alloc] initWithString:@"完成" attributes:@{NSFontAttributeName:[UIFont fontWithName:GIGA_FONTBOLD size:18],NSForegroundColorAttributeName:[UIColor whiteColor]}];
|
||||||
@@ -437,7 +438,6 @@
|
|||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//获取结果
|
//获取结果
|
||||||
@@ -458,6 +458,8 @@
|
|||||||
NSUInteger minute = [mode.minute integerValue];
|
NSUInteger minute = [mode.minute integerValue];
|
||||||
NSTimeInterval time = minute * 60;
|
NSTimeInterval time = minute * 60;
|
||||||
[GiGaUserDefault savaMaskeTime:time];
|
[GiGaUserDefault savaMaskeTime:time];
|
||||||
|
[GiGaUserDefault saveUserTestFlag:YES];
|
||||||
|
NC_POST_NAME_OBJECT(@"testfalgUpdate", nil);
|
||||||
|
|
||||||
//展示结果
|
//展示结果
|
||||||
// NSDictionary *dic = @{
|
// NSDictionary *dic = @{
|
||||||
@@ -475,7 +477,10 @@
|
|||||||
[self.navigationController pushViewController:resultVC animated:YES];
|
[self.navigationController pushViewController:resultVC animated:YES];
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
|
if (result.code == 401) {
|
||||||
|
//token失效
|
||||||
|
[GiGaBaseAPiRequest userTokenTimeOutGologinFromVC:self];
|
||||||
|
}
|
||||||
GIGA_ShowToast(result.message);
|
GIGA_ShowToast(result.message);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -529,4 +534,5 @@
|
|||||||
// Dispose of any resources that can be recreated.
|
// Dispose of any resources that can be recreated.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -19,6 +19,9 @@
|
|||||||
#import "MaskTestNODataViewCell.h"
|
#import "MaskTestNODataViewCell.h"
|
||||||
#import "UIButton+WebCache.h"
|
#import "UIButton+WebCache.h"
|
||||||
#import "UIImageView+WebCache.h"
|
#import "UIImageView+WebCache.h"
|
||||||
|
#import "GiGaUserInfoVC.h"
|
||||||
|
#import "LXCustomActionSheet.h"
|
||||||
|
|
||||||
@interface MaskTestResultVC ()
|
@interface MaskTestResultVC ()
|
||||||
|
|
||||||
@property (nonatomic,strong) UIView *tabheader;
|
@property (nonatomic,strong) UIView *tabheader;
|
||||||
@@ -139,6 +142,7 @@
|
|||||||
[self.navigationController popViewControllerAnimated:YES];
|
[self.navigationController popViewControllerAnimated:YES];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)viewDidAppear:(BOOL)animated{
|
- (void)viewDidAppear:(BOOL)animated{
|
||||||
[super viewDidAppear:animated];
|
[super viewDidAppear:animated];
|
||||||
|
|
||||||
@@ -173,7 +177,7 @@
|
|||||||
rightBtn.layer.masksToBounds = YES;
|
rightBtn.layer.masksToBounds = YES;
|
||||||
rightBtn.layer.cornerRadius = 20;
|
rightBtn.layer.cornerRadius = 20;
|
||||||
[rightBtn setImage:[UIImage imageNamed:@"nav_circle_avatar"] forState:UIControlStateNormal];
|
[rightBtn setImage:[UIImage imageNamed:@"nav_circle_avatar"] forState:UIControlStateNormal];
|
||||||
|
[rightBtn addTarget:self action:@selector(goUserInfoView) forControlEvents:UIControlEventTouchUpInside];
|
||||||
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:rightBtn];
|
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:rightBtn];
|
||||||
|
|
||||||
if ([[[UIDevice currentDevice] systemVersion] doubleValue] >= 11.0) {
|
if ([[[UIDevice currentDevice] systemVersion] doubleValue] >= 11.0) {
|
||||||
@@ -196,6 +200,11 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-(void)goUserInfoView{
|
||||||
|
|
||||||
|
GiGaUserInfoVC *userVC= [[GiGaUserInfoVC alloc] init];
|
||||||
|
[self.navigationController pushViewController:userVC animated:YES];
|
||||||
|
}
|
||||||
-(void)requstLatestTestData{
|
-(void)requstLatestTestData{
|
||||||
|
|
||||||
[self.view makeToastActivity:CSToastPositionCenter];
|
[self.view makeToastActivity:CSToastPositionCenter];
|
||||||
@@ -278,7 +287,9 @@
|
|||||||
if (self.model == nil) {
|
if (self.model == nil) {
|
||||||
return 255;
|
return 255;
|
||||||
}
|
}
|
||||||
if (KMainW < 375) {
|
if (KMainW == 375) {
|
||||||
|
return (KMainH - SAFE_NAV_HEIGHT) / 3.00 - 10;
|
||||||
|
}else if (KMainW <= 375){
|
||||||
return 201;
|
return 201;
|
||||||
}
|
}
|
||||||
CGFloat viewH = self.view.frame.size.height - SAFE_NAV_HEIGHT;
|
CGFloat viewH = self.view.frame.size.height - SAFE_NAV_HEIGHT;
|
||||||
@@ -306,26 +317,48 @@
|
|||||||
[self showFinalShareView];
|
[self showFinalShareView];
|
||||||
UIImage *image = [UIImage saveNavsuitImage:self.tableView];
|
UIImage *image = [UIImage saveNavsuitImage:self.tableView];
|
||||||
//[[GiGaFileNanager shareInstance] saveImaeToAlBum:image];
|
//[[GiGaFileNanager shareInstance] saveImaeToAlBum:image];
|
||||||
[self jxt_showActionSheetWithTitle:@"分享到微信" message:@"" appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
// [self jxt_showActionSheetWithTitle:@"分享到微信" message:@"" appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
||||||
|
//
|
||||||
|
// alertMaker.addActionDefaultTitle(@"微信好友");
|
||||||
|
// alertMaker.addActionDefaultTitle(@"朋友圈");
|
||||||
|
// alertMaker.addActionCancelTitle(@"取消");
|
||||||
|
// } actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
|
// [self hidSomeViews];
|
||||||
|
// if (buttonIndex==0) {
|
||||||
|
// //好友
|
||||||
|
// [self shareImagToWX:image scene:WXSceneSession];
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// }else if (buttonIndex==1){
|
||||||
|
// // 朋友圈
|
||||||
|
// [self shareImagToWX:image scene:WXSceneTimeline];
|
||||||
|
// }else{
|
||||||
|
// GILog(@"取消");
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
// }];
|
||||||
|
|
||||||
alertMaker.addActionDefaultTitle(@"微信好友");
|
LXCustomActionSheet *sheet = [[LXCustomActionSheet alloc] initWithTitle:@"分享到微信" optionsArr:@[@"微信好友",@"朋友圈"] cancelTitle:@"取消" selectedBlock:^(NSInteger index) {
|
||||||
alertMaker.addActionDefaultTitle(@"朋友圈");
|
|
||||||
alertMaker.addActionCancelTitle(@"取消");
|
if (index==0) {
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
|
||||||
[self hidSomeViews];
|
[self hidSomeViews];
|
||||||
if (buttonIndex==0) {
|
|
||||||
//好友
|
//好友
|
||||||
[self shareImagToWX:image scene:WXSceneSession];
|
[self shareImagToWX:image scene:WXSceneSession];
|
||||||
|
|
||||||
|
|
||||||
}else if (buttonIndex==1){
|
}else if (index==1){
|
||||||
|
[self hidSomeViews];
|
||||||
// 朋友圈
|
// 朋友圈
|
||||||
[self shareImagToWX:image scene:WXSceneTimeline];
|
[self shareImagToWX:image scene:WXSceneTimeline];
|
||||||
}else{
|
|
||||||
GILog(@"取消");
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} cancelBlock:^{
|
||||||
|
[self hidSomeViews];
|
||||||
|
GILog(@"取消");
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
[sheet show];
|
||||||
|
|
||||||
}
|
}
|
||||||
-(void)hidSomeViews{
|
-(void)hidSomeViews{
|
||||||
MaskResultShareViewCell *cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:2 inSection:0]];
|
MaskResultShareViewCell *cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:2 inSection:0]];
|
||||||
@@ -343,7 +376,6 @@
|
|||||||
cell.lastLabe.text = @"长按扫描二维码,测试你的肤质";
|
cell.lastLabe.text = @"长按扫描二维码,测试你的肤质";
|
||||||
self.tabheader.hidden = NO;
|
self.tabheader.hidden = NO;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)shareImagToWX:(UIImage *)image scene:(int)scene{
|
-(void)shareImagToWX:(UIImage *)image scene:(int)scene{
|
||||||
|
|||||||
@@ -17,5 +17,7 @@
|
|||||||
@property (nonatomic,assign) int answer_id;
|
@property (nonatomic,assign) int answer_id;
|
||||||
//默认答案 1选中 0 非选中
|
//默认答案 1选中 0 非选中
|
||||||
@property (nonatomic,assign) int defaultFlag;
|
@property (nonatomic,assign) int defaultFlag;
|
||||||
|
//答案h序号
|
||||||
|
@property (nonatomic,assign) int sortNum;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
typedef NS_ENUM(NSInteger,GIGaQuestionSliderType)
|
typedef NS_ENUM(NSInteger,GIGaQuestionSliderType)
|
||||||
{
|
{
|
||||||
GIGaQuestionSliderTypeGray = 0,//灰
|
GIGaQuestionSliderTypeGray = 0,//灰 //红
|
||||||
GIGaQuestionSliderTypeGradient ,//变色
|
GIGaQuestionSliderTypeGradient ,//变色
|
||||||
GIGaQuestionSliderTypeIndicator //带指示器
|
GIGaQuestionSliderTypeIndicator //带指示器
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -57,13 +57,14 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
-(void)creatGradient{
|
-(void)creatGradient{
|
||||||
|
|
||||||
self.minimumTrackTintColor=[UIColor clearColor];
|
self.minimumTrackTintColor=[UIColor clearColor];
|
||||||
self.maximumTrackTintColor=[UIColor clearColor];
|
self.maximumTrackTintColor=[UIColor clearColor];
|
||||||
|
|
||||||
NSArray *colorArr = @[(id)[[UIColor colorWithHex:0xFFFFFF] CGColor],
|
NSArray *colorArr = @[(id)[[UIColor colorWithHex:0xFFFFFF] CGColor],
|
||||||
(id)[[UIColor colorWithHex:0xFFF3E4] CGColor],
|
(id)[[UIColor colorWithHex:0xFFF3E4] CGColor],
|
||||||
(id)[[UIColor colorWithHex:0xFBC37B] CGColor]];
|
(id)[[UIColor colorWithHex:0xFBC37B] CGColor]];
|
||||||
NSArray *colorLocationArray = @[@0.0, @0.5, @1];
|
NSArray *colorLocationArray = @[@0.0, @0.5, @1.0];
|
||||||
CAGradientLayer * gradientLayer = [CAGradientLayer layer];
|
CAGradientLayer * gradientLayer = [CAGradientLayer layer];
|
||||||
gradientLayer.frame = self.bounds;
|
gradientLayer.frame = self.bounds;
|
||||||
gradientLayer.masksToBounds = YES;
|
gradientLayer.masksToBounds = YES;
|
||||||
@@ -76,18 +77,21 @@
|
|||||||
[gradientLayer setStartPoint:CGPointMake(0, 0)];
|
[gradientLayer setStartPoint:CGPointMake(0, 0)];
|
||||||
[gradientLayer setEndPoint:CGPointMake(1, 0)];
|
[gradientLayer setEndPoint:CGPointMake(1, 0)];
|
||||||
[self.layer addSublayer:gradientLayer];
|
[self.layer addSublayer:gradientLayer];
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)createUI{
|
-(void)createUI{
|
||||||
|
|
||||||
self.minimumValue = 0.0;
|
self.minimumValue = 0.0;
|
||||||
self.maximumValue = 1.0;
|
self.maximumValue = 1.0;
|
||||||
self.minimumTrackTintColor = GIGARGB(216,216, 216, 1);
|
// self.minimumTrackTintColor = GIGARGB(216,216, 216, 1);
|
||||||
self.maximumTrackTintColor = GIGARGB(216,216, 216, 1);
|
// self.maximumTrackTintColor = GIGARGB(216,216, 216, 1);
|
||||||
|
self.minimumTrackTintColor = GIGAUIColorFromRGBA(0xEA4D4D);
|
||||||
|
self.maximumTrackTintColor = GIGAUIColorFromRGBA(0xEA4D4D);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
-(CGRect)trackRectForBounds:(CGRect)bounds
|
-(CGRect)trackRectForBounds:(CGRect)bounds
|
||||||
{
|
{
|
||||||
bounds.origin.x = bounds.origin.x;
|
bounds.origin.x = bounds.origin.x;
|
||||||
@@ -95,6 +99,7 @@
|
|||||||
bounds.size.height = bounds.size.height;
|
bounds.size.height = bounds.size.height;
|
||||||
bounds.size.width = bounds.size.width;
|
bounds.size.width = bounds.size.width;
|
||||||
return bounds;
|
return bounds;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)thumbimageView{
|
-(void)thumbimageView{
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14113" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14313.18" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
||||||
<device id="retina4_7" orientation="portrait">
|
<device id="retina4_7" orientation="portrait">
|
||||||
<adaptation id="fullscreen"/>
|
<adaptation id="fullscreen"/>
|
||||||
</device>
|
</device>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<deployment identifier="iOS"/>
|
<deployment identifier="iOS"/>
|
||||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
|
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14283.14"/>
|
||||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
@@ -49,6 +49,7 @@
|
|||||||
<connections>
|
<connections>
|
||||||
<outlet property="answerTitle" destination="iR5-Lj-9dP" id="Jlc-ce-rWZ"/>
|
<outlet property="answerTitle" destination="iR5-Lj-9dP" id="Jlc-ce-rWZ"/>
|
||||||
</connections>
|
</connections>
|
||||||
|
<point key="canvasLocation" x="137.59999999999999" y="148.42578710644679"/>
|
||||||
</tableViewCell>
|
</tableViewCell>
|
||||||
</objects>
|
</objects>
|
||||||
</document>
|
</document>
|
||||||
|
|||||||
@@ -80,13 +80,15 @@
|
|||||||
-(void)creatPopSlider{
|
-(void)creatPopSlider{
|
||||||
|
|
||||||
[self creatTab];
|
[self creatTab];
|
||||||
NYSliderPopover *slider = [[NYSliderPopover alloc] init];
|
NYSliderPopover *slider = [[NYSliderPopover alloc] initWithFrame:CGRectMake(0,self.frame.size.height,self.frame.size.height, 14)];
|
||||||
slider.frame = CGRectMake(0,self.frame.size.height,self.frame.size.height, 13);
|
// slider.frame = CGRectMake(0,self.frame.size.height,self.frame.size.height, 14);
|
||||||
[slider addTarget:self action:@selector(updateValue:) forControlEvents:UIControlEventValueChanged];
|
[slider addTarget:self action:@selector(updateValue:) forControlEvents:UIControlEventValueChanged];
|
||||||
self.poSlider = slider;
|
self.poSlider = slider;
|
||||||
[self addSubview:slider];
|
[self addSubview:slider];
|
||||||
//self.poSlider.value = self.currentModel.slidervalue;
|
self.poSlider.value = self.currentModel.slidervalue;
|
||||||
self.poSlider.transform = CGAffineTransformMakeRotation(- M_PI/2);
|
self.poSlider.transform = CGAffineTransformMakeRotation(- M_PI/2);
|
||||||
|
//NSLog(@"popslider%@",self.poSlider);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)creatNormalStyle:(NSArray *)titles style:(GIGaQuestionSliderType)type{
|
-(void)creatNormalStyle:(NSArray *)titles style:(GIGaQuestionSliderType)type{
|
||||||
@@ -96,12 +98,13 @@
|
|||||||
|
|
||||||
-(void)creatSliderType:(GIGaQuestionSliderType)type{
|
-(void)creatSliderType:(GIGaQuestionSliderType)type{
|
||||||
|
|
||||||
GIGaQuestionSlider *slider = [[GIGaQuestionSlider alloc] initWithFrame:CGRectMake(0,self.frame.size.height,self.frame.size.height, 13) type:type];
|
GIGaQuestionSlider *slider = [[GIGaQuestionSlider alloc] initWithFrame:CGRectMake(0,self.frame.size.height,self.frame.size.height, 14) type:type];
|
||||||
[slider addTarget:self action:@selector(updateValue:) forControlEvents:UIControlEventValueChanged];
|
[slider addTarget:self action:@selector(updateValue:) forControlEvents:UIControlEventValueChanged];
|
||||||
self.slider = slider;
|
self.slider = slider;
|
||||||
[self.slider setValue:self.currentModel.slidervalue];
|
[self.slider setValue:self.currentModel.slidervalue];
|
||||||
[self addSubview:slider];
|
[self addSubview:slider];
|
||||||
self.slider.transform = CGAffineTransformMakeRotation(- M_PI/2);
|
self.slider.transform = CGAffineTransformMakeRotation(- M_PI/2);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)layoutSubviews{
|
-(void)layoutSubviews{
|
||||||
@@ -145,9 +148,9 @@
|
|||||||
|
|
||||||
[self selectNOBtnState:self.noBtn];
|
[self selectNOBtnState:self.noBtn];
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
[self selctYesBtnState:self.yesBtn];
|
[self selctYesBtnState:self.yesBtn];
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark 是
|
#pragma mark 是
|
||||||
@@ -192,8 +195,40 @@
|
|||||||
|
|
||||||
-(void)updateValue:(UISlider *)slider{
|
-(void)updateValue:(UISlider *)slider{
|
||||||
NSLog(@"value%f",slider.value);
|
NSLog(@"value%f",slider.value);
|
||||||
|
// 2 ,3 ,5 题slider 滑动时自动滑动到答案
|
||||||
|
|
||||||
|
if (self.poSlider) {
|
||||||
|
//1 范围匹配取值
|
||||||
[self anlysisAnswerWithSlider:slider.value];
|
[self anlysisAnswerWithSlider:slider.value];
|
||||||
|
}else{
|
||||||
|
// 2 ,3 ,5 题slider 滑动时自动滑动到答案
|
||||||
|
// 范围0 ~ 100
|
||||||
|
//每一份高度
|
||||||
|
NSInteger totalCount = _answerList.count;
|
||||||
|
CGFloat powSize = 100.f / (totalCount -1);
|
||||||
|
//当前值
|
||||||
|
CGFloat currentValue = slider.value * 100.f;
|
||||||
|
//答案游标
|
||||||
|
int count = currentValue / powSize;
|
||||||
|
//最终自动滑到答案slider对应的value
|
||||||
|
int index = 0 ;
|
||||||
|
index = (int)_answerList.count - 1 -count;
|
||||||
|
if (index < 0) {
|
||||||
|
index = 0;
|
||||||
|
}
|
||||||
|
NSLog(@"%d",index);
|
||||||
|
float value = 1.f/(totalCount -1) * count;
|
||||||
|
NSLog(@"%f",value);
|
||||||
|
[self anlysisAnswerWithSlider:value];
|
||||||
|
[self sliderAutoChoiceAnswerValue:value];
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)sliderAutoChoiceAnswerValue:(float)value{
|
||||||
|
|
||||||
|
[self.slider setValue:value];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark 题目答案解析
|
#pragma mark 题目答案解析
|
||||||
@@ -228,7 +263,7 @@
|
|||||||
//答案游标 1开始
|
//答案游标 1开始
|
||||||
int count = currentValue / powSize;
|
int count = currentValue / powSize;
|
||||||
|
|
||||||
//答案数组下标
|
//答案数组下标 与slider值逆序对应(slider 0 对应 数组最大下标)
|
||||||
int index = 0 ;
|
int index = 0 ;
|
||||||
index = (int)_answerList.count - 1 -count;
|
index = (int)_answerList.count - 1 -count;
|
||||||
if (index < 0) {
|
if (index < 0) {
|
||||||
|
|||||||
@@ -43,56 +43,6 @@
|
|||||||
make.bottom.mas_equalTo(self.mas_bottom);
|
make.bottom.mas_equalTo(self.mas_bottom);
|
||||||
}];
|
}];
|
||||||
|
|
||||||
UIImageView *jianyiImageView = [[UIImageView alloc] init];
|
|
||||||
jianyiImageView.contentMode = UIViewContentModeScaleAspectFit;
|
|
||||||
jianyiImageView.image = [UIImage imageNamed:@"share_tim"];
|
|
||||||
[self addSubview:jianyiImageView];
|
|
||||||
[jianyiImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
||||||
make.left.mas_equalTo(self.mas_left).offset(40);
|
|
||||||
make.top.mas_equalTo(self.mas_top).offset(36);
|
|
||||||
if (KMainW < 375) {
|
|
||||||
make.size.mas_equalTo(CGSizeMake(139, 30));
|
|
||||||
}else{
|
|
||||||
make.size.mas_equalTo(CGSizeMake(179, 30));
|
|
||||||
}
|
|
||||||
|
|
||||||
}];
|
|
||||||
|
|
||||||
//时间⌚️
|
|
||||||
UILabel *timeLabel = [[UILabel alloc] init];
|
|
||||||
timeLabel.textColor = [UIColor blackColor];
|
|
||||||
if (KMainW < 375) {
|
|
||||||
timeLabel.font = GIGA_TEXTFONTBOLD(24);
|
|
||||||
}else{
|
|
||||||
timeLabel.font = GIGA_TEXTFONTBOLD(35);
|
|
||||||
}
|
|
||||||
timeLabel.text = @"17";
|
|
||||||
self.timeLabel = timeLabel;
|
|
||||||
[self addSubview:timeLabel];
|
|
||||||
[timeLabel sizeToFit];
|
|
||||||
[timeLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
||||||
make.left.mas_equalTo(self.mas_left).offset(73);
|
|
||||||
make.top.mas_equalTo(jianyiImageView.mas_bottom).offset(20);
|
|
||||||
}];
|
|
||||||
|
|
||||||
//分钟图片
|
|
||||||
UIImageView *minueImageview = [[UIImageView alloc] init];
|
|
||||||
minueImageview.image = [UIImage imageNamed:@"share_minute"];
|
|
||||||
minueImageview.contentMode = UIViewContentModeScaleAspectFit;
|
|
||||||
[self addSubview:minueImageview];
|
|
||||||
[minueImageview mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
||||||
|
|
||||||
make.left.mas_equalTo(timeLabel.mas_right);
|
|
||||||
if (KMainW < 375) {
|
|
||||||
//se 5s
|
|
||||||
make.size.mas_equalTo(CGSizeMake(48, 49));
|
|
||||||
|
|
||||||
}else{
|
|
||||||
make.size.mas_equalTo(CGSizeMake(72, 49));
|
|
||||||
}
|
|
||||||
|
|
||||||
make.centerY.mas_equalTo(timeLabel.mas_centerY);
|
|
||||||
}];
|
|
||||||
|
|
||||||
//左侧红色梯形区域
|
//左侧红色梯形区域
|
||||||
|
|
||||||
@@ -118,6 +68,73 @@
|
|||||||
|
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
UIImageView *jianyiImageView = [[UIImageView alloc] init];
|
||||||
|
jianyiImageView.contentMode = UIViewContentModeScaleAspectFit;
|
||||||
|
jianyiImageView.image = [UIImage imageNamed:@"share_tim"];
|
||||||
|
[self addSubview:jianyiImageView];
|
||||||
|
[jianyiImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.right.mas_equalTo(colorView.mas_left).offset((KMainW - 82)*0.424);
|
||||||
|
make.top.mas_equalTo(self.mas_top).offset(36);
|
||||||
|
if (KMainW < 375) {
|
||||||
|
make.size.mas_equalTo(CGSizeMake(139, 30));
|
||||||
|
}else{
|
||||||
|
make.size.mas_equalTo(CGSizeMake(179, 30));
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
|
||||||
|
//分钟图片
|
||||||
|
UIImageView *minueImageview = [[UIImageView alloc] init];
|
||||||
|
minueImageview.image = [UIImage imageNamed:@"share_minute"];
|
||||||
|
minueImageview.contentMode = UIViewContentModeScaleAspectFit;
|
||||||
|
[self addSubview:minueImageview];
|
||||||
|
[minueImageview mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
|
||||||
|
//make.left.mas_equalTo(colorView.mas_left).offset(20);
|
||||||
|
if (KMainW == 375) {
|
||||||
|
//x
|
||||||
|
make.left.mas_equalTo(colorView.mas_left).offset(30);
|
||||||
|
make.size.mas_equalTo(CGSizeMake(54, 49));
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (KMainW < 375){
|
||||||
|
make.left.mas_equalTo(colorView.mas_left).offset(18);
|
||||||
|
make.size.mas_equalTo(CGSizeMake(48, 49));
|
||||||
|
}else if (KMainW == 414){
|
||||||
|
make.left.mas_equalTo(colorView.mas_left).offset(28);
|
||||||
|
make.size.mas_equalTo(CGSizeMake(54, 49));
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
make.left.mas_equalTo(colorView.mas_left).offset(28);
|
||||||
|
make.size.mas_equalTo(CGSizeMake(72, 49));
|
||||||
|
}
|
||||||
|
make.top.mas_equalTo(jianyiImageView.mas_bottom).offset(20);
|
||||||
|
|
||||||
|
}];
|
||||||
|
|
||||||
|
//时间⌚️
|
||||||
|
UILabel *timeLabel = [[UILabel alloc] init];
|
||||||
|
timeLabel.textColor = [UIColor blackColor];
|
||||||
|
if (KMainW == 375) {
|
||||||
|
timeLabel.font = GIGA_TEXTFONTBOLD(26);
|
||||||
|
}else if (KMainW == 414){
|
||||||
|
timeLabel.font = GIGA_TEXTFONTBOLD(30);
|
||||||
|
}
|
||||||
|
else if (KMainW < 375){
|
||||||
|
timeLabel.font = GIGA_TEXTFONTBOLD(24);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
timeLabel.font = GIGA_TEXTFONTBOLD(35);
|
||||||
|
}
|
||||||
|
timeLabel.text = @"17";
|
||||||
|
self.timeLabel = timeLabel;
|
||||||
|
[self addSubview:timeLabel];
|
||||||
|
[timeLabel sizeToFit];
|
||||||
|
[timeLabel mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.right.mas_equalTo(minueImageview.mas_left).offset(0);
|
||||||
|
make.centerY.mas_equalTo(minueImageview.mas_centerY);
|
||||||
|
|
||||||
|
}];
|
||||||
|
|
||||||
[self bringSubviewToFront:jianyiImageView];
|
[self bringSubviewToFront:jianyiImageView];
|
||||||
[self bringSubviewToFront:minueImageview];
|
[self bringSubviewToFront:minueImageview];
|
||||||
[self bringSubviewToFront:timeLabel];
|
[self bringSubviewToFront:timeLabel];
|
||||||
@@ -125,6 +142,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)layoutSubviews{
|
- (void)layoutSubviews{
|
||||||
|
|
||||||
[super layoutSubviews];
|
[super layoutSubviews];
|
||||||
[self drawViewInView:self.colorView backColor:GIGA_MAIN_BGCOLOR];
|
[self drawViewInView:self.colorView backColor:GIGA_MAIN_BGCOLOR];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -125,7 +125,7 @@
|
|||||||
[lastLabe mas_makeConstraints:^(MASConstraintMaker *make) {
|
[lastLabe mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
|
||||||
make.centerY.mas_equalTo(logo.mas_centerY);
|
make.centerY.mas_equalTo(logo.mas_centerY);
|
||||||
make.centerX.mas_equalTo(self.mas_centerX);
|
make.left.mas_equalTo(logo.mas_right).offset(5);
|
||||||
}];
|
}];
|
||||||
|
|
||||||
//3
|
//3
|
||||||
|
|||||||
@@ -23,8 +23,18 @@
|
|||||||
{
|
{
|
||||||
self = [super init];
|
self = [super init];
|
||||||
if (self) {
|
if (self) {
|
||||||
|
[self thumbimageView];
|
||||||
|
[self createUI];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (instancetype)initWithFrame:(CGRect)frame
|
||||||
|
{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if (self) {
|
||||||
|
[self thumbimageView];
|
||||||
|
[self createUI];
|
||||||
}
|
}
|
||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
@@ -41,9 +51,8 @@
|
|||||||
[self updatePopoverFrame];
|
[self updatePopoverFrame];
|
||||||
_popover.alpha = 0;
|
_popover.alpha = 0;
|
||||||
[self.superview addSubview:_popover];
|
[self.superview addSubview:_popover];
|
||||||
|
// [self thumbimageView];
|
||||||
[self thumbimageView];
|
// [self createUI];
|
||||||
[self createUI];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return _popover;
|
return _popover;
|
||||||
@@ -52,7 +61,8 @@
|
|||||||
- (void)setValue:(float)value
|
- (void)setValue:(float)value
|
||||||
{
|
{
|
||||||
[super setValue:value];
|
[super setValue:value];
|
||||||
[self updatePopoverFrame];
|
//[self updatePopoverFrame];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
|
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
|
||||||
@@ -157,8 +167,10 @@
|
|||||||
|
|
||||||
self.minimumValue = 0.0;
|
self.minimumValue = 0.0;
|
||||||
self.maximumValue = 1.0;
|
self.maximumValue = 1.0;
|
||||||
self.minimumTrackTintColor = GIGARGB(216,216, 216, 1);
|
// self.minimumTrackTintColor = GIGARGB(216,216, 216, 1);
|
||||||
self.maximumTrackTintColor = GIGARGB(216,216, 216, 1);
|
// self.maximumTrackTintColor = GIGARGB(216,216, 216, 1);
|
||||||
|
self.minimumTrackTintColor = GIGAUIColorFromRGBA(0xEA4D4D);
|
||||||
|
self.maximumTrackTintColor = GIGAUIColorFromRGBA(0xEA4D4D);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -171,6 +183,8 @@
|
|||||||
return bounds;
|
return bounds;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-(void)thumbimageView{
|
-(void)thumbimageView{
|
||||||
|
|
||||||
[self setThumbImage:[self OriginImage:[UIImage imageNamed:@"btn_slider_thumb"] scaleToSize:CGSizeMake(40, 40)] forState:UIControlStateNormal];
|
[self setThumbImage:[self OriginImage:[UIImage imageNamed:@"btn_slider_thumb"] scaleToSize:CGSizeMake(40, 40)] forState:UIControlStateNormal];
|
||||||
@@ -236,7 +250,6 @@
|
|||||||
if ((point.x >= _lastBounds.origin.x - thumbBound_x) && (point.x <= (_lastBounds.origin.x + _lastBounds.size.width + thumbBound_x)) && (point.y < (_lastBounds.size.height + thumbBound_y))) {
|
if ((point.x >= _lastBounds.origin.x - thumbBound_x) && (point.x <= (_lastBounds.origin.x + _lastBounds.size.width + thumbBound_x)) && (point.y < (_lastBounds.size.height + thumbBound_y))) {
|
||||||
result = YES;
|
result = YES;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,31 @@
|
|||||||
|
//
|
||||||
|
// GiGaLoaclImageModel.h
|
||||||
|
// GIGA
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/12.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@interface GiGaLoaclImageModel : NSObject
|
||||||
|
|
||||||
|
//背景图片(本地)
|
||||||
|
@property(nonatomic,copy) NSString *localImageName;
|
||||||
|
//图片序号
|
||||||
|
@property(nonatomic) NSUInteger index;
|
||||||
|
|
||||||
|
//分享面膜时间 staring now 图片名 很白两种
|
||||||
|
@property(nonatomic,copy) NSString *shareLabeimageName;
|
||||||
|
//描述文本颜色 1 白 2 黑 3 GIGARGB(170, 170, 170, 1)
|
||||||
|
@property(nonatomic) NSUInteger descColorflag;
|
||||||
|
//描述文本
|
||||||
|
@property(nonatomic,copy) NSString *desc;
|
||||||
|
//文本颜色 what are we doing 颜色 黑白
|
||||||
|
@property(nonatomic) NSUInteger doingColorflag;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
//
|
||||||
|
// GiGaLoaclImageModel.m
|
||||||
|
// GIGA
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/12.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "GiGaLoaclImageModel.h"
|
||||||
|
|
||||||
|
@implementation GiGaLoaclImageModel
|
||||||
|
|
||||||
|
@end
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
//
|
||||||
|
// GiGaPageControl.h
|
||||||
|
// GIGA
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/8.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface GiGaPageControl : UIPageControl
|
||||||
|
{
|
||||||
|
UIImage *_defalutImage;
|
||||||
|
UIImage *_currentImage;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
||||||
@@ -0,0 +1,50 @@
|
|||||||
|
//
|
||||||
|
// GiGaPageControl.m
|
||||||
|
// GIGA
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/8.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "GiGaPageControl.h"
|
||||||
|
|
||||||
|
@implementation GiGaPageControl
|
||||||
|
- (instancetype)initWithFrame:(CGRect)frame
|
||||||
|
{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if (self) {
|
||||||
|
_defalutImage = [UIImage imageNamed:@"pagecontrol_def"];
|
||||||
|
_currentImage = [UIImage imageNamed:@"pagecontrol_current"];
|
||||||
|
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)updateDots{
|
||||||
|
|
||||||
|
for (int i =0; i<self.subviews.count; i++) {
|
||||||
|
UIView *dot = [self.subviews objectAtIndex:i];
|
||||||
|
dot.backgroundColor = [UIColor clearColor];
|
||||||
|
UIImageView *imageview = [[UIImageView alloc] init];
|
||||||
|
if (i == self.currentPage) {
|
||||||
|
imageview.image = _currentImage;
|
||||||
|
imageview.frame = CGRectMake(0, 0, 26, 8);
|
||||||
|
}else{
|
||||||
|
imageview.image = _defalutImage;
|
||||||
|
imageview.frame = CGRectMake(0,0,8, 8);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (UIView *subViews in dot.subviews) {
|
||||||
|
[subViews removeFromSuperview];
|
||||||
|
}
|
||||||
|
[dot addSubview:imageview];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)setCurrentPage:(NSInteger)currentPage
|
||||||
|
{
|
||||||
|
[super setCurrentPage:currentPage];
|
||||||
|
[self updateDots];
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
//
|
||||||
|
// LXPageControl.h
|
||||||
|
// GIGA
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/8.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface LXPageControl : UIView
|
||||||
|
|
||||||
|
@property (nonatomic, assign) NSInteger numberOfPages;
|
||||||
|
@property (nonatomic, assign) NSInteger currentPage;
|
||||||
|
@property (nonatomic, strong) UIColor *tintColor;
|
||||||
|
@property (nonatomic, strong) UIColor *currentTintColor;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
||||||
@@ -0,0 +1,194 @@
|
|||||||
|
//
|
||||||
|
// LXPageControl.m
|
||||||
|
// GIGA
|
||||||
|
//
|
||||||
|
// Created by lianxiang on 2018/10/8.
|
||||||
|
// Copyright © 2018年 com.giga.ios. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "LXPageControl.h"
|
||||||
|
#define pointWidth 5
|
||||||
|
#define pointInterval 8
|
||||||
|
@interface LXPageControl ()
|
||||||
|
|
||||||
|
@property (nonatomic, strong) NSMutableArray *pageArray;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation LXPageControl
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOL _shouldSetColor;
|
||||||
|
BOOL _isInit;
|
||||||
|
BOOL _inAni; // 是否在动画中
|
||||||
|
}
|
||||||
|
|
||||||
|
- (instancetype)initWithFrame:(CGRect)frame
|
||||||
|
{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if (self)
|
||||||
|
{
|
||||||
|
_tintColor = [UIColor lightGrayColor];
|
||||||
|
_currentTintColor = [UIColor whiteColor];
|
||||||
|
_shouldSetColor = NO;
|
||||||
|
_isInit = YES;
|
||||||
|
_inAni = NO;
|
||||||
|
if (!self.currentPage) {
|
||||||
|
self.currentPage = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)layoutSubviews
|
||||||
|
{
|
||||||
|
[super layoutSubviews];
|
||||||
|
if (self.pageArray.count == 0) return;
|
||||||
|
|
||||||
|
if (_shouldSetColor)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < self.pageArray.count; i++)
|
||||||
|
{
|
||||||
|
UIView *view = self.pageArray[i];
|
||||||
|
view.backgroundColor = self.tintColor;
|
||||||
|
if (i == _currentPage)
|
||||||
|
{
|
||||||
|
view.backgroundColor = self.currentTintColor;
|
||||||
|
}
|
||||||
|
_shouldSetColor = NO;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (_isInit)
|
||||||
|
{
|
||||||
|
CGFloat totalWidth = _numberOfPages * pointWidth + (_numberOfPages - 1) * pointInterval;
|
||||||
|
for (int i = 0; i < self.pageArray.count; i++)
|
||||||
|
{
|
||||||
|
|
||||||
|
UIView *view = self.pageArray[i];
|
||||||
|
CGFloat x = (self.frame.size.width - totalWidth) * 0.5f + (pointWidth + pointInterval) * i;
|
||||||
|
CGFloat y = (self.frame.size.height - pointWidth) * 0.5f;
|
||||||
|
CGFloat width = (i==_currentPage?(pointWidth + pointInterval):pointWidth);
|
||||||
|
CGFloat height = pointWidth;
|
||||||
|
if (i == _currentPage)
|
||||||
|
{
|
||||||
|
x = x - pointInterval * 0.5f;
|
||||||
|
}
|
||||||
|
view.frame = CGRectMake(x, y, width, height);
|
||||||
|
_isInit = NO;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark -- setter
|
||||||
|
- (void)setNumberOfPages:(NSInteger)numberOfPages
|
||||||
|
{
|
||||||
|
_numberOfPages = numberOfPages;
|
||||||
|
if (self.pageArray.count > 0)
|
||||||
|
{
|
||||||
|
[self.pageArray enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop)
|
||||||
|
{
|
||||||
|
[(UIView *)obj removeFromSuperview];
|
||||||
|
}];
|
||||||
|
[self.pageArray removeAllObjects];
|
||||||
|
}
|
||||||
|
for (int i = 0; i < numberOfPages; i++)
|
||||||
|
{
|
||||||
|
UIView *indicatorView = [[UIView alloc] initWithFrame:CGRectZero];
|
||||||
|
indicatorView.layer.cornerRadius = pointWidth * 0.5f;
|
||||||
|
[self addSubview:indicatorView];
|
||||||
|
[self.pageArray addObject:indicatorView];
|
||||||
|
}
|
||||||
|
|
||||||
|
_shouldSetColor = YES;
|
||||||
|
[self setNeedsLayout];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)setCurrentPage:(NSInteger)currentPage
|
||||||
|
{
|
||||||
|
if (self.pageArray.count == 0)
|
||||||
|
{
|
||||||
|
_currentPage = currentPage;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (_currentPage == currentPage) return;
|
||||||
|
if (_inAni) return;
|
||||||
|
// 向右
|
||||||
|
if (currentPage > _currentPage)
|
||||||
|
{
|
||||||
|
UIView *currentView = self.pageArray[_currentPage];
|
||||||
|
UIView *nextView = self.pageArray[currentPage];
|
||||||
|
[self bringSubviewToFront:currentView];
|
||||||
|
_inAni = YES;
|
||||||
|
[UIView animateWithDuration:0.3 animations:^{
|
||||||
|
CGRect newFrame = currentView.frame;
|
||||||
|
newFrame.size = CGSizeMake((pointInterval + pointWidth) * (currentPage - self->_currentPage + 1), newFrame.size.height);
|
||||||
|
currentView.frame = newFrame;
|
||||||
|
} completion:^(BOOL finished)
|
||||||
|
{
|
||||||
|
[self bringSubviewToFront:nextView];
|
||||||
|
currentView.backgroundColor = self.tintColor;
|
||||||
|
nextView.backgroundColor = self.currentTintColor;
|
||||||
|
CGRect cFrame = currentView.frame;
|
||||||
|
nextView.frame = cFrame;
|
||||||
|
cFrame.origin = CGPointMake(cFrame.origin.x + pointInterval * 0.5f, cFrame.origin.y);
|
||||||
|
cFrame.size = CGSizeMake(pointWidth, pointWidth);
|
||||||
|
currentView.frame = cFrame;
|
||||||
|
|
||||||
|
[UIView animateWithDuration:0.3 animations:^{
|
||||||
|
CGRect newFrame = nextView.frame;
|
||||||
|
newFrame.size = CGSizeMake(pointInterval + pointWidth, newFrame.size.height);
|
||||||
|
newFrame.origin = CGPointMake(newFrame.origin.x + (pointInterval + pointWidth) * (currentPage - self->_currentPage), newFrame.origin.y);
|
||||||
|
nextView.frame = newFrame;
|
||||||
|
} completion:^(BOOL finished)
|
||||||
|
{
|
||||||
|
self->_currentPage = currentPage;
|
||||||
|
self->_inAni = NO;
|
||||||
|
}];
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
// 向左
|
||||||
|
else
|
||||||
|
{
|
||||||
|
UIView *currentView = self.pageArray[_currentPage];
|
||||||
|
UIView *nextView = self.pageArray[currentPage];
|
||||||
|
[self bringSubviewToFront:currentView];
|
||||||
|
_inAni = YES;
|
||||||
|
[UIView animateWithDuration:0.3 animations:^{
|
||||||
|
CGRect newFrame = currentView.frame;
|
||||||
|
newFrame.size = CGSizeMake((pointInterval + pointWidth) * (self->_currentPage - currentPage + 1), newFrame.size.height);
|
||||||
|
newFrame.origin = CGPointMake(newFrame.origin.x - (pointInterval + pointWidth) * (self->_currentPage - currentPage), newFrame.origin.y);
|
||||||
|
currentView.frame = newFrame;
|
||||||
|
} completion:^(BOOL finished)
|
||||||
|
{
|
||||||
|
[self bringSubviewToFront:nextView];
|
||||||
|
currentView.backgroundColor = self.tintColor;
|
||||||
|
nextView.backgroundColor = self.currentTintColor;
|
||||||
|
CGRect cFrame = currentView.frame;
|
||||||
|
nextView.frame = cFrame;
|
||||||
|
cFrame.origin = CGPointMake(cFrame.origin.x + pointInterval * 0.5f + (pointInterval + pointWidth) * (self->_currentPage - currentPage), cFrame.origin.y);
|
||||||
|
cFrame.size = CGSizeMake(pointWidth, pointWidth);
|
||||||
|
currentView.frame = cFrame;
|
||||||
|
|
||||||
|
[UIView animateWithDuration:0.3 animations:^{
|
||||||
|
CGRect newFrame = nextView.frame;
|
||||||
|
newFrame.size = CGSizeMake(pointInterval + pointWidth, newFrame.size.height);
|
||||||
|
nextView.frame = newFrame;
|
||||||
|
} completion:^(BOOL finished)
|
||||||
|
{
|
||||||
|
self->_currentPage = currentPage;
|
||||||
|
self->_inAni = NO;
|
||||||
|
}];
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSMutableArray *)pageArray
|
||||||
|
{
|
||||||
|
if (!_pageArray)
|
||||||
|
{
|
||||||
|
_pageArray = [NSMutableArray array];
|
||||||
|
}
|
||||||
|
return _pageArray;
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
||||||
@@ -9,6 +9,8 @@
|
|||||||
#import "MaskTimeCircularProgressView.h"
|
#import "MaskTimeCircularProgressView.h"
|
||||||
#import "LXCountTimer.h"
|
#import "LXCountTimer.h"
|
||||||
#import "SHineLabel.h"
|
#import "SHineLabel.h"
|
||||||
|
#import "GIGaDateHelper.h"
|
||||||
|
#import "AppDelegate.h"
|
||||||
|
|
||||||
@interface MaskTimeCircularProgressView()
|
@interface MaskTimeCircularProgressView()
|
||||||
@property (nonatomic) CADisplayLink *displayLink;
|
@property (nonatomic) CADisplayLink *displayLink;
|
||||||
@@ -18,7 +20,7 @@
|
|||||||
@property (nonatomic) NSTimeInterval currentTimeinterval;
|
@property (nonatomic) NSTimeInterval currentTimeinterval;
|
||||||
@property (nonatomic,strong) LXCountTimer *timer;
|
@property (nonatomic,strong) LXCountTimer *timer;
|
||||||
@property (nonatomic,strong) NSTimer *playTimer;
|
@property (nonatomic,strong) NSTimer *playTimer;
|
||||||
|
@property (nonatomic,strong) UIImageView *holderImageView;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@@ -48,6 +50,11 @@
|
|||||||
-(void)setUP{
|
-(void)setUP{
|
||||||
|
|
||||||
self.backgroundColor = [UIColor clearColor];
|
self.backgroundColor = [UIColor clearColor];
|
||||||
|
self.holderImageView.frame = CGRectMake(self.frame.size.width/2 -self.frame.size.width/4 , self.frame.size.width/2 -self.frame.size.width/4,self.frame.size.width/2, self.frame.size.width/2);
|
||||||
|
|
||||||
|
self.holderImageView.contentMode = UIViewContentModeScaleAspectFit;
|
||||||
|
[self addSubview:self.holderImageView];
|
||||||
|
|
||||||
_currentTimeinterval = 0;
|
_currentTimeinterval = 0;
|
||||||
_isMoving = NO;
|
_isMoving = NO;
|
||||||
self.countLabel.frame = CGRectMake(_lineWidth, self.frame.size.height /2 - 15 , self.frame.size.width - _lineWidth*2, 30);
|
self.countLabel.frame = CGRectMake(_lineWidth, self.frame.size.height /2 - 15 , self.frame.size.width - _lineWidth*2, 30);
|
||||||
@@ -90,7 +97,14 @@
|
|||||||
}
|
}
|
||||||
return _countLabel;
|
return _countLabel;
|
||||||
}
|
}
|
||||||
|
//停止图片
|
||||||
|
- (UIImageView *)holderImageView{
|
||||||
|
if (!_holderImageView) {
|
||||||
|
_holderImageView = [[UIImageView alloc] init];
|
||||||
|
_holderImageView.image = [UIImage imageNamed:@"bg_on"];
|
||||||
|
}
|
||||||
|
return _holderImageView;
|
||||||
|
}
|
||||||
- (void)setLineWidth:(CGFloat)lineWidth{
|
- (void)setLineWidth:(CGFloat)lineWidth{
|
||||||
|
|
||||||
CAShapeLayer *backgroundLayer = [self createRingLayerWithCenter:CGPointMake(CGRectGetWidth(self.frame) / 2, CGRectGetHeight(self.frame) / 2) radius:CGRectGetWidth(self.bounds) / 2 - lineWidth / 2 lineWidth:lineWidth color:self.backColor];
|
CAShapeLayer *backgroundLayer = [self createRingLayerWithCenter:CGPointMake(CGRectGetWidth(self.frame) / 2, CGRectGetHeight(self.frame) / 2) radius:CGRectGetWidth(self.bounds) / 2 - lineWidth / 2 lineWidth:lineWidth color:self.backColor];
|
||||||
@@ -132,8 +146,8 @@
|
|||||||
slice.lineCap = kCALineJoinRound;
|
slice.lineCap = kCALineJoinRound;
|
||||||
slice.lineJoin = kCALineJoinBevel;
|
slice.lineJoin = kCALineJoinBevel;
|
||||||
slice.path = smoothedPath.CGPath;
|
slice.path = smoothedPath.CGPath;
|
||||||
|
|
||||||
return slice;
|
return slice;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)setProgress:(float)progress{
|
- (void)setProgress:(float)progress{
|
||||||
@@ -167,7 +181,10 @@
|
|||||||
- (void)startWith:(NSTimeInterval)time{
|
- (void)startWith:(NSTimeInterval)time{
|
||||||
|
|
||||||
self.timeinterval = time;
|
self.timeinterval = time;
|
||||||
|
|
||||||
[self countDown:time];
|
[self countDown:time];
|
||||||
|
|
||||||
|
//进度圆环
|
||||||
[self start];
|
[self start];
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -187,12 +204,36 @@
|
|||||||
|
|
||||||
-(void)countDown:(NSTimeInterval)timeInterVal{
|
-(void)countDown:(NSTimeInterval)timeInterVal{
|
||||||
|
|
||||||
NSString *timeformat = [GiGaHelper stringWithNSTimerinterval:timeInterVal];
|
AppDelegate *delegate =(AppDelegate *) [[UIApplication sharedApplication] delegate];
|
||||||
NSArray *timesArr = [timeformat componentsSeparatedByString:@":"];
|
|
||||||
NSString *hour = timesArr[0];
|
if (delegate.isMasking) {
|
||||||
NSString *min = timesArr[1];
|
|
||||||
NSString *sec = timesArr[2];
|
}else{
|
||||||
[self countTimeBegain:hour.integerValue minute:min.integerValue second:sec.integerValue];
|
|
||||||
|
[GIGaDateHelper saveSatrtDate];
|
||||||
|
}
|
||||||
|
|
||||||
|
NSDate *startDate = [GIGaDateHelper getStartDate];
|
||||||
|
NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];
|
||||||
|
if (startDate == nil) {
|
||||||
|
startDate = dat;
|
||||||
|
}
|
||||||
|
|
||||||
|
NSTimeInterval passt = [GIGaDateHelper getTimebySubtracting:startDate andDate2:dat];
|
||||||
|
NSLog(@"passT %0.f",passt);
|
||||||
|
|
||||||
|
NSTimeInterval cunrenShowTimCount = timeInterVal > passt ? timeInterVal - passt: timeInterVal;
|
||||||
|
delegate.isMasking= YES;
|
||||||
|
weakify(self);
|
||||||
|
[self.timer countDownWithtimerInterval:cunrenShowTimCount completeBlock:^(NSInteger day, NSInteger hour, NSInteger minute, NSInteger second) {
|
||||||
|
[weakSelf refreshTimeCount:hour minute:minute second:second];
|
||||||
|
if (minute==0 && second == 0) {
|
||||||
|
delegate.isMasking = NO;
|
||||||
|
[GIGaDateHelper removeStartDate];
|
||||||
|
[GIGaDateHelper saveisMaskingflag:NO];
|
||||||
|
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -205,8 +246,11 @@
|
|||||||
[self.timer countDownWithStratTimeStamp:nowTimestamp finishTimeStamp:futrueTimestamp completeBlock:^(NSInteger day, NSInteger hour, NSInteger minute, NSInteger second) {
|
[self.timer countDownWithStratTimeStamp:nowTimestamp finishTimeStamp:futrueTimestamp completeBlock:^(NSInteger day, NSInteger hour, NSInteger minute, NSInteger second) {
|
||||||
[weakSelf refreshTimeCount:hour minute:minute second:second];
|
[weakSelf refreshTimeCount:hour minute:minute second:second];
|
||||||
}];
|
}];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-(void)refreshTimeCount:(NSInteger)hour minute:(NSInteger)minute second:(NSInteger)second{
|
-(void)refreshTimeCount:(NSInteger)hour minute:(NSInteger)minute second:(NSInteger)second{
|
||||||
|
|
||||||
self.countLabel.text = [NSString stringWithFormat:@"%02ld:%02ld",minute,second];
|
self.countLabel.text = [NSString stringWithFormat:@"%02ld:%02ld",minute,second];
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="OSF-Gb-h1M">
|
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="OSF-Gb-h1M">
|
||||||
<rect key="frame" x="6" y="12" width="329" height="217"/>
|
<rect key="frame" x="6" y="12" width="329" height="217"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="bg_logo" translatesAutoresizingMaskIntoConstraints="NO" id="iJy-9p-48y">
|
<imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="img_product" translatesAutoresizingMaskIntoConstraints="NO" id="iJy-9p-48y">
|
||||||
<rect key="frame" x="8" y="8" width="313" height="175"/>
|
<rect key="frame" x="8" y="8" width="313" height="175"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="175" id="0Jj-uy-CDT"/>
|
<constraint firstAttribute="height" constant="175" id="0Jj-uy-CDT"/>
|
||||||
@@ -107,7 +107,7 @@
|
|||||||
</tableViewCell>
|
</tableViewCell>
|
||||||
</objects>
|
</objects>
|
||||||
<resources>
|
<resources>
|
||||||
<image name="bg_logo" width="88" height="88"/>
|
<image name="img_product" width="164" height="121"/>
|
||||||
<image name="masktie_clock" width="20" height="19"/>
|
<image name="masktie_clock" width="20" height="19"/>
|
||||||
</resources>
|
</resources>
|
||||||
</document>
|
</document>
|
||||||
|
|||||||
@@ -88,7 +88,17 @@ typedef NS_ENUM(NSUInteger, GYTitlePosition) {
|
|||||||
weakSelf.textLabel.layer.position = weakSelf.bottomPosition;
|
weakSelf.textLabel.layer.position = weakSelf.bottomPosition;
|
||||||
weakSelf.needDealy = DEALY_WHEN_TITLE_IN_BOTTOM;
|
weakSelf.needDealy = DEALY_WHEN_TITLE_IN_BOTTOM;
|
||||||
weakSelf.currentIndex ++;
|
weakSelf.currentIndex ++;
|
||||||
weakSelf.textLabel.text = [weakSelf.contentsAry objectAtIndex:[weakSelf realCurrentIndex]];
|
NSString *tex = [weakSelf.contentsAry objectAtIndex:[weakSelf realCurrentIndex]];
|
||||||
|
if ([tex isEqualToString:@"面膜时间"]) {
|
||||||
|
weakSelf.textLabel.font = GIGA_TEXTFONTMEDIUM(18);
|
||||||
|
}else{
|
||||||
|
if (KMainW < 375) {
|
||||||
|
weakSelf.textLabel.font = GIGA_TEXTFONTMEDIUM(10);
|
||||||
|
}else{
|
||||||
|
weakSelf.textLabel.font = GIGA_TEXTFONTMEDIUM(12);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
weakSelf.textLabel.text = tex;
|
||||||
} else {
|
} else {
|
||||||
weakSelf.needDealy = DEALY_WHEN_TITLE_IN_MIDDLE;
|
weakSelf.needDealy = DEALY_WHEN_TITLE_IN_MIDDLE;
|
||||||
}
|
}
|
||||||
@@ -96,7 +106,17 @@ typedef NS_ENUM(NSUInteger, GYTitlePosition) {
|
|||||||
[weakSelf startAnimation];
|
[weakSelf startAnimation];
|
||||||
} else { //停止动画后,要设置label位置和label显示内容
|
} else { //停止动画后,要设置label位置和label显示内容
|
||||||
weakSelf.textLabel.layer.position = weakSelf.middlePosition;
|
weakSelf.textLabel.layer.position = weakSelf.middlePosition;
|
||||||
weakSelf.textLabel.text = [weakSelf.contentsAry objectAtIndex:[weakSelf realCurrentIndex]];
|
NSString *tex = [weakSelf.contentsAry objectAtIndex:[weakSelf realCurrentIndex]];
|
||||||
|
if ([tex isEqualToString:@"面膜时间"]) {
|
||||||
|
weakSelf.textLabel.font = GIGA_TEXTFONTMEDIUM(18);
|
||||||
|
}else{
|
||||||
|
if (KMainW < 375) {
|
||||||
|
weakSelf.textLabel.font = GIGA_TEXTFONTMEDIUM(10);
|
||||||
|
}else{
|
||||||
|
weakSelf.textLabel.font = GIGA_TEXTFONTMEDIUM(12);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
weakSelf.textLabel.text = tex;
|
||||||
}
|
}
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -357,7 +357,7 @@
|
|||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
|
|
||||||
if (buttonIndex == 0) {
|
if (buttonIndex == 0) {
|
||||||
[self satartCamera];
|
[self digPhotoAuth];
|
||||||
}else if (buttonIndex == 1){
|
}else if (buttonIndex == 1){
|
||||||
[self fromAlbums];
|
[self fromAlbums];
|
||||||
}
|
}
|
||||||
@@ -390,6 +390,7 @@
|
|||||||
|
|
||||||
-(void)satartCamera{
|
-(void)satartCamera{
|
||||||
|
|
||||||
|
|
||||||
GIGaFeedPhontosViewCell *cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:3]];
|
GIGaFeedPhontosViewCell *cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:3]];
|
||||||
if ((cell.images.count + 1) > 6) {
|
if ((cell.images.count + 1) > 6) {
|
||||||
GIGA_ShowToast(@"最多六张");
|
GIGA_ShowToast(@"最多六张");
|
||||||
@@ -406,21 +407,12 @@
|
|||||||
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
|
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
|
||||||
NSString *errorStr = @"应用相机权限受限,请在设置中启用";
|
NSString *errorStr = @"应用相机权限受限,请在设置中启用";
|
||||||
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
||||||
alertMaker.addActionCancelTitle(@"取消");
|
alertMaker.addActionCancelTitle(@"知道了");
|
||||||
alertMaker.addActionDefaultTitle(@"去开启");
|
|
||||||
|
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
|
|
||||||
if (buttonIndex == 1) {
|
|
||||||
|
|
||||||
NSString *urlStr = @"App-Prefs:root=Photos";
|
|
||||||
if (@available(iOS 10.0, *)) {
|
|
||||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr] options:@{} completionHandler:nil];
|
|
||||||
} else {
|
|
||||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr]];
|
|
||||||
// Fallback on earlier versions
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}];
|
}];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -432,6 +424,47 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-(void)digPhotoAuth{
|
||||||
|
|
||||||
|
[PHPhotoLibrary requestAuthorization:^(PHAuthorizationStatus status){
|
||||||
|
|
||||||
|
switch (status) {
|
||||||
|
|
||||||
|
case PHAuthorizationStatusNotDetermined:
|
||||||
|
{
|
||||||
|
NSLog(@"用户还没有做出选择");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case PHAuthorizationStatusAuthorized:
|
||||||
|
{
|
||||||
|
|
||||||
|
NSLog(@"用户允许当前应用访问相册");
|
||||||
|
// 拍照后本app需保存到相册
|
||||||
|
[self satartCamera];
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case PHAuthorizationStatusDenied:
|
||||||
|
{
|
||||||
|
//NSLog(@"用户拒绝当前应用访问相册,我们需要提醒用户打开访问开关");
|
||||||
|
GIGA_ShowToast(@"拒绝当前应用访问相册,请在系统设置中允许访问");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case PHAuthorizationStatusRestricted:
|
||||||
|
{
|
||||||
|
NSLog(@"家长控制,不允许访问");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
NSLog(@"default");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker{
|
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker{
|
||||||
[picker dismissViewControllerAnimated:YES completion:nil];
|
[picker dismissViewControllerAnimated:YES completion:nil];
|
||||||
@@ -439,6 +472,7 @@
|
|||||||
|
|
||||||
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<UIImagePickerControllerInfoKey,id> *)info
|
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<UIImagePickerControllerInfoKey,id> *)info
|
||||||
{
|
{
|
||||||
|
|
||||||
[picker dismissViewControllerAnimated:YES completion:nil];
|
[picker dismissViewControllerAnimated:YES completion:nil];
|
||||||
GIGaFeedPhontosViewCell *cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:3]];
|
GIGaFeedPhontosViewCell *cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:3]];
|
||||||
|
|
||||||
|
|||||||
@@ -81,7 +81,7 @@
|
|||||||
if (section == 0){
|
if (section == 0){
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
return 3;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
|
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
|
||||||
@@ -117,15 +117,11 @@
|
|||||||
[self.navigationController pushViewController:userVC animated:YES];
|
[self.navigationController pushViewController:userVC animated:YES];
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
if (indexPath.section == 1 && indexPath.row == 0 ){
|
if (indexPath.section == 1 && indexPath.row == 0 ){
|
||||||
GiGaUserViewController *userVC= [[GiGaUserViewController alloc] init];
|
GiGaUserViewController *userVC= [[GiGaUserViewController alloc] init];
|
||||||
[self.navigationController pushViewController:userVC animated:YES];
|
[self.navigationController pushViewController:userVC animated:YES];
|
||||||
|
|
||||||
}else if (indexPath.section == 1 && indexPath.row == 1){
|
|
||||||
|
|
||||||
GIGaChangePassVC *changePass = [[GIGaChangePassVC alloc] init];
|
|
||||||
[self.navigationController pushViewController:changePass animated:YES];
|
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
GiGaChangePhoneNumberVC *changePass = [[GiGaChangePhoneNumberVC alloc] init];
|
GiGaChangePhoneNumberVC *changePass = [[GiGaChangePhoneNumberVC alloc] init];
|
||||||
@@ -133,6 +129,7 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
|
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
|
||||||
|
|||||||
@@ -309,7 +309,6 @@
|
|||||||
self.user.nickName = @"";
|
self.user.nickName = @"";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if ( self.user.nickName.length >40 ) {
|
if ( self.user.nickName.length >40 ) {
|
||||||
GIGA_ShowToast(@"用户名1-40字符长度")
|
GIGA_ShowToast(@"用户名1-40字符长度")
|
||||||
return;
|
return;
|
||||||
@@ -353,11 +352,10 @@
|
|||||||
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
[api requstDataWithResult:^(GiGaAPIResult *result) {
|
||||||
[self.view hideToastActivity];
|
[self.view hideToastActivity];
|
||||||
if (result.success) {
|
if (result.success) {
|
||||||
GIGA_ShowToast(@"修改成功");
|
GIGA_WIndowTost(@"修改成功")
|
||||||
|
|
||||||
[[GiGaUserManager shareUser] saveUser:self.user];
|
[[GiGaUserManager shareUser] saveUser:self.user];
|
||||||
|
|
||||||
NC_POST_NAME_OBJECT(kUserNameUpDateNoti, nil);
|
NC_POST_NAME_OBJECT(kUserNameUpDateNoti, nil);
|
||||||
|
[self.navigationController popViewControllerAnimated:YES];
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
GIGA_ShowToast(result.dic[@"msg"]);
|
GIGA_ShowToast(result.dic[@"msg"]);
|
||||||
@@ -411,21 +409,12 @@
|
|||||||
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
|
if(authStatus == AVAuthorizationStatusRestricted || authStatus == AVAuthorizationStatusDenied){
|
||||||
NSString *errorStr = @"应用相机权限受限,请在设置中启用";
|
NSString *errorStr = @"应用相机权限受限,请在设置中启用";
|
||||||
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
||||||
alertMaker.addActionCancelTitle(@"取消");
|
alertMaker.addActionCancelTitle(@"知道了");
|
||||||
alertMaker.addActionDefaultTitle(@"去开启");
|
//alertMaker.addActionDefaultTitle(@"去开启");
|
||||||
|
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
|
|
||||||
if (buttonIndex == 1) {
|
|
||||||
|
|
||||||
NSString *urlStr = @"App-Prefs:root=Photos";
|
|
||||||
if (@available(iOS 10.0, *)) {
|
|
||||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr] options:@{} completionHandler:nil];
|
|
||||||
} else {
|
|
||||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr]];
|
|
||||||
// Fallback on earlier versions
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}];
|
}];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -450,19 +439,13 @@
|
|||||||
|
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
NSString *errorStr = @"应用相权册限受限,请在设置中启用";
|
NSString *errorStr = @"应用相册权限受限,请在设置中启用";
|
||||||
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
[self jxt_showAlertWithTitle:@"" message:errorStr appearanceProcess:^(JXTAlertController * _Nonnull alertMaker) {
|
||||||
alertMaker.addActionCancelTitle(@"取消");
|
alertMaker.addActionCancelTitle(@"知道了");
|
||||||
alertMaker.addActionDefaultTitle(@"去开启");
|
//alertMaker.addActionDefaultTitle(@"去开启");
|
||||||
|
|
||||||
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
} actionsBlock:^(NSInteger buttonIndex, UIAlertAction * _Nonnull action, JXTAlertController * _Nonnull alertSelf) {
|
||||||
if (buttonIndex == 1) {
|
|
||||||
NSURL *url = [NSURL URLWithString:@"prefs:root=Photos"];
|
|
||||||
if ([[UIApplication sharedApplication] canOpenURL:url]) {
|
|
||||||
[[UIApplication sharedApplication] openURL:url];
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -18,8 +18,8 @@
|
|||||||
@interface GiMaskTimeHistoryVC ()<UITableViewDelegate,UITableViewDataSource>
|
@interface GiMaskTimeHistoryVC ()<UITableViewDelegate,UITableViewDataSource>
|
||||||
|
|
||||||
@property(nonatomic,strong) NSMutableArray *dataArr;
|
@property(nonatomic,strong) NSMutableArray *dataArr;
|
||||||
@property(nonatomic) NSUInteger currentPage;
|
@property(nonatomic) int currentPage;
|
||||||
@property(nonatomic,assign) NSInteger totalMinute;
|
@property(nonatomic,copy) NSString *totalMinute;
|
||||||
@property(nonatomic,assign) NSInteger ranking;
|
@property(nonatomic,assign) NSInteger ranking;
|
||||||
@property(nonatomic,assign) NSUInteger totalPage;
|
@property(nonatomic,assign) NSUInteger totalPage;
|
||||||
//@property(nonatomic,strong) MaskHistryRecordlist *record;
|
//@property(nonatomic,strong) MaskHistryRecordlist *record;
|
||||||
@@ -35,7 +35,7 @@
|
|||||||
[super viewDidLoad];
|
[super viewDidLoad];
|
||||||
self.dataArr = [[NSMutableArray alloc] init];
|
self.dataArr = [[NSMutableArray alloc] init];
|
||||||
_currentPage = 1;
|
_currentPage = 1;
|
||||||
_totalMinute = 0;
|
_totalMinute = @"0.0";
|
||||||
_ranking = 0;
|
_ranking = 0;
|
||||||
_isFreshing = NO;
|
_isFreshing = NO;
|
||||||
[self addNavTitile:@"历史记录"];
|
[self addNavTitile:@"历史记录"];
|
||||||
@@ -53,7 +53,7 @@
|
|||||||
self.tableView.rowHeight = UITableViewAutomaticDimension;
|
self.tableView.rowHeight = UITableViewAutomaticDimension;
|
||||||
|
|
||||||
[self creatRefreshView];
|
[self creatRefreshView];
|
||||||
[self loadDataWtih:[NSString stringWithFormat:@"%ld",_currentPage] isFresh:YES];
|
[self loadDataWtih:[NSString stringWithFormat:@"%d",_currentPage] isFresh:YES];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
|
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
|
||||||
@@ -84,7 +84,7 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
cell.timeLabe.text = [NSString stringWithFormat:@"%ld",(long)self.totalMinute];
|
cell.timeLabe.text = [NSString stringWithFormat:@"%@",self.totalMinute];
|
||||||
|
|
||||||
if (self.exquisitePercent) {
|
if (self.exquisitePercent) {
|
||||||
NSString *text = [NSString stringWithFormat:@"本月超过%@用户",self.exquisitePercent];
|
NSString *text = [NSString stringWithFormat:@"本月超过%@用户",self.exquisitePercent];
|
||||||
@@ -111,7 +111,6 @@
|
|||||||
return cell;
|
return cell;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
|
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
|
||||||
if (section == 0) {
|
if (section == 0) {
|
||||||
return 1;
|
return 1;
|
||||||
@@ -154,7 +153,7 @@
|
|||||||
NSDictionary *reDic =result.dic;
|
NSDictionary *reDic =result.dic;
|
||||||
|
|
||||||
self.ranking = [[reDic valueForKey:@"ranking"] integerValue];
|
self.ranking = [[reDic valueForKey:@"ranking"] integerValue];
|
||||||
self.totalMinute = [[reDic valueForKey:@"totalMinute"] integerValue] ;
|
self.totalMinute = [reDic valueForKey:@"totalMinute"];
|
||||||
self.exquisitePercent = [reDic valueForKey:@"exquisitePercent"];
|
self.exquisitePercent = [reDic valueForKey:@"exquisitePercent"];
|
||||||
self.guizeUrl = [reDic valueForKey:@"ruleUrl"];
|
self.guizeUrl = [reDic valueForKey:@"ruleUrl"];
|
||||||
|
|
||||||
@@ -220,10 +219,9 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (_currentPage < _totalPage) {
|
if (_currentPage < _totalPage) {
|
||||||
_currentPage ++;
|
_currentPage ++;
|
||||||
[self loadDataWtih:[NSString stringWithFormat:@"%ld",self.currentPage] isFresh:NO];
|
[self loadDataWtih:[NSString stringWithFormat:@"%d",self.currentPage] isFresh:NO];
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,5 +32,6 @@
|
|||||||
@property(nonatomic,copy) NSString *sexName;
|
@property(nonatomic,copy) NSString *sexName;
|
||||||
@property(nonatomic,copy) NSString *weixin;
|
@property(nonatomic,copy) NSString *weixin;
|
||||||
|
|
||||||
|
@property(nonatomic) float minute;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -25,12 +25,15 @@
|
|||||||
- (void)textViewDidChange:(UITextView *)textView
|
- (void)textViewDidChange:(UITextView *)textView
|
||||||
{
|
{
|
||||||
if (textView == self.contentFiled) {
|
if (textView == self.contentFiled) {
|
||||||
if (textView.text.length == 0) {
|
|
||||||
self.holdLabe.hidden = NO;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( textView.text.length <=100) {
|
if ( textView.text.length <=100) {
|
||||||
|
if (textView.text.length == 0) {
|
||||||
|
self.holdLabe.hidden = NO;
|
||||||
|
}else{
|
||||||
self.holdLabe.hidden = YES;
|
self.holdLabe.hidden = YES;
|
||||||
|
}
|
||||||
|
|
||||||
self.numberCountLabe.text = [NSString stringWithFormat:@"%lu/100",(unsigned long)textView.text.length];
|
self.numberCountLabe.text = [NSString stringWithFormat:@"%lu/100",(unsigned long)textView.text.length];
|
||||||
self.contentFiled.text = textView.text;
|
self.contentFiled.text = textView.text;
|
||||||
self.textMAx = textView.text;
|
self.textMAx = textView.text;
|
||||||
|
|||||||
@@ -21,10 +21,6 @@
|
|||||||
self.infoTitle.text = @"个人信息";
|
self.infoTitle.text = @"个人信息";
|
||||||
self.numberLabe.hidden = YES;
|
self.numberLabe.hidden = YES;
|
||||||
}else if (indexPath.section == 1 && indexPath.row == 1){
|
}else if (indexPath.section == 1 && indexPath.row == 1){
|
||||||
//修改密码
|
|
||||||
self.infoTitle.text = @"修改密码";
|
|
||||||
self.numberLabe.hidden = YES;
|
|
||||||
}else if (indexPath.section == 1 && indexPath.row == 2){
|
|
||||||
//修改手机
|
//修改手机
|
||||||
self.infoTitle.text = @"修改手机";
|
self.infoTitle.text = @"修改手机";
|
||||||
self.numberLabe.hidden = NO;
|
self.numberLabe.hidden = NO;
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14113" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14313.18" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
||||||
<device id="retina4_7" orientation="portrait">
|
<device id="retina4_7" orientation="portrait">
|
||||||
<adaptation id="fullscreen"/>
|
<adaptation id="fullscreen"/>
|
||||||
</device>
|
</device>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<deployment identifier="iOS"/>
|
<deployment identifier="iOS"/>
|
||||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
|
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14283.14"/>
|
||||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
@@ -32,10 +32,10 @@
|
|||||||
<nil key="highlightedColor"/>
|
<nil key="highlightedColor"/>
|
||||||
</label>
|
</label>
|
||||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Kst-pD-CHd">
|
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Kst-pD-CHd">
|
||||||
<rect key="frame" x="25" y="43.5" width="324.5" height="0.5"/>
|
<rect key="frame" x="25" y="43" width="324.5" height="0.5"/>
|
||||||
<color key="backgroundColor" red="0.87058823529999996" green="0.87058823529999996" blue="0.87058823529999996" alpha="1" colorSpace="calibratedRGB"/>
|
<color key="backgroundColor" red="0.87058823529999996" green="0.87058823529999996" blue="0.87058823529999996" alpha="1" colorSpace="calibratedRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="height" constant="0.5" id="Uus-Ns-JTy"/>
|
<constraint firstAttribute="height" constant="0.5" id="ESZ-rm-dCn"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</view>
|
</view>
|
||||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="user_indicator_right" translatesAutoresizingMaskIntoConstraints="NO" id="bdq-X4-7Cg">
|
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="user_indicator_right" translatesAutoresizingMaskIntoConstraints="NO" id="bdq-X4-7Cg">
|
||||||
@@ -47,14 +47,14 @@
|
|||||||
</imageView>
|
</imageView>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstAttribute="trailing" secondItem="Kst-pD-CHd" secondAttribute="trailing" constant="25.5" id="C8S-X7-7Rz"/>
|
|
||||||
<constraint firstItem="y6H-zg-4yv" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="120" id="DIy-Iq-K1L"/>
|
<constraint firstItem="y6H-zg-4yv" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="120" id="DIy-Iq-K1L"/>
|
||||||
<constraint firstAttribute="trailing" secondItem="bdq-X4-7Cg" secondAttribute="trailing" constant="17" id="Fbe-Qg-IBx"/>
|
<constraint firstAttribute="trailing" secondItem="bdq-X4-7Cg" secondAttribute="trailing" constant="17" id="Fbe-Qg-IBx"/>
|
||||||
<constraint firstItem="Kst-pD-CHd" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="25" id="MHr-ud-Hb1"/>
|
<constraint firstAttribute="trailing" secondItem="Kst-pD-CHd" secondAttribute="trailing" constant="25.5" id="IIY-Ji-Vmi"/>
|
||||||
|
<constraint firstItem="Kst-pD-CHd" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="25" id="L6U-8j-1kg"/>
|
||||||
<constraint firstItem="bdq-X4-7Cg" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" constant="0.25" id="a00-Gq-hFr"/>
|
<constraint firstItem="bdq-X4-7Cg" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" constant="0.25" id="a00-Gq-hFr"/>
|
||||||
<constraint firstAttribute="bottom" secondItem="Kst-pD-CHd" secondAttribute="bottom" constant="-0.5" id="eZ9-17-ap9"/>
|
|
||||||
<constraint firstItem="OA0-rJ-5qY" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="i9g-Lz-1cw"/>
|
<constraint firstItem="OA0-rJ-5qY" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="i9g-Lz-1cw"/>
|
||||||
<constraint firstItem="OA0-rJ-5qY" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="29" id="mRd-S1-39D"/>
|
<constraint firstItem="OA0-rJ-5qY" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="29" id="mRd-S1-39D"/>
|
||||||
|
<constraint firstAttribute="bottom" secondItem="Kst-pD-CHd" secondAttribute="bottom" id="skw-un-GQY"/>
|
||||||
<constraint firstItem="y6H-zg-4yv" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="uJ4-iv-cmb"/>
|
<constraint firstItem="y6H-zg-4yv" firstAttribute="centerY" secondItem="H2p-sc-9uM" secondAttribute="centerY" id="uJ4-iv-cmb"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</tableViewCellContentView>
|
</tableViewCellContentView>
|
||||||
|
|||||||