Browse Source

1.侧滑的优化

time 6 years ago
parent
commit
3836c6fa63

+ 102 - 26
shiku_im/shiku_im.xcodeproj/project.pbxproj

@@ -1434,8 +1434,6 @@
 		8472A9F217B697E900129DBB /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8472A9F117B697E900129DBB /* QuartzCore.framework */; };
 		8472A9F417B6980E00129DBB /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8472A9F317B6980E00129DBB /* CoreData.framework */; };
 		99040D7F2149F745004F5503 /* UASClientMapCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 99040D7E2149F745004F5503 /* UASClientMapCell.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
-		993E56162302CA60006AA2B7 /* main.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 993E56132302CA5F006AA2B7 /* main.jsbundle */; };
-		993E56172302CA60006AA2B7 /* app.json in Resources */ = {isa = PBXBuildFile; fileRef = 993E56152302CA5F006AA2B7 /* app.json */; };
 		9952309E21476AF900BBEFAD /* UASClientMaBoardCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 9952309D21476AF900BBEFAD /* UASClientMaBoardCell.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
 		995230A121476B2400BBEFAD /* UASClientMaForgetCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 995230A021476B2400BBEFAD /* UASClientMaForgetCell.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
 		995230A421476B4000BBEFAD /* UASClientMaCarefulCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 995230A321476B4000BBEFAD /* UASClientMaCarefulCell.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
@@ -1472,8 +1470,17 @@
 		99C399C22146660B004D3306 /* UASClientMaSecHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 99C399C12146660B004D3306 /* UASClientMaSecHeaderView.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
 		99C399C521466EC9004D3306 /* UASClientMaSecFooterView.m in Sources */ = {isa = PBXBuildFile; fileRef = 99C399C421466EC9004D3306 /* UASClientMaSecFooterView.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
 		99C4544A217730DA0013FFC3 /* UASClientNodataCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 99C45449217730D90013FFC3 /* UASClientNodataCell.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
-		99C8A818230397940073EF99 /* YRRnBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 99C8A817230397940073EF99 /* YRRnBridge.m */; };
+		99C8A818230397940073EF99 /* YRRnBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = 99C8A817230397940073EF99 /* YRRnBridge.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
 		99D0B9FA21378E4D0002DFC4 /* UINavigationController+popGes.m in Sources */ = {isa = PBXBuildFile; fileRef = 99D0B9F821378E4C0002DFC4 /* UINavigationController+popGes.m */; };
+		99D68BEE2304E7D600BB781A /* main.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 99D68BE12304E7D500BB781A /* main.jsbundle */; };
+		99D68BEF2304E7D600BB781A /* app.json in Resources */ = {isa = PBXBuildFile; fileRef = 99D68BE32304E7D500BB781A /* app.json */; };
+		99D68BF02304E7D600BB781A /* back-icon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 99D68BEA2304E7D500BB781A /* back-icon@3x.png */; };
+		99D68BF12304E7D600BB781A /* back-icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 99D68BEB2304E7D500BB781A /* back-icon@2x.png */; };
+		99D68BF22304E7D600BB781A /* back-icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 99D68BEC2304E7D500BB781A /* back-icon.png */; };
+		99D68BF32304E7D600BB781A /* back-icon-mask.png in Resources */ = {isa = PBXBuildFile; fileRef = 99D68BED2304E7D500BB781A /* back-icon-mask.png */; };
+		99D68BF72305501E00BB781A /* back-icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 99D68BF42305501D00BB781A /* back-icon.png */; };
+		99D68BF82305501E00BB781A /* back-icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 99D68BF52305501D00BB781A /* back-icon@2x.png */; };
+		99D68BF92305501E00BB781A /* back-icon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 99D68BF62305501E00BB781A /* back-icon@3x.png */; };
 		99D9586721211D0100B44CA7 /* UASCountDownView.m in Sources */ = {isa = PBXBuildFile; fileRef = 99D9586621211D0100B44CA7 /* UASCountDownView.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
 		99D9586D2121231B00B44CA7 /* UASAdView.m in Sources */ = {isa = PBXBuildFile; fileRef = 99D9586C2121231B00B44CA7 /* UASAdView.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
 		99E43E212152294100779FA5 /* UASClientForgetVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 99E43E202152294100779FA5 /* UASClientForgetVC.m */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; };
@@ -5077,8 +5084,6 @@
 		8472A9F317B6980E00129DBB /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };
 		99040D7D2149F745004F5503 /* UASClientMapCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UASClientMapCell.h; sourceTree = "<group>"; };
 		99040D7E2149F745004F5503 /* UASClientMapCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UASClientMapCell.m; sourceTree = "<group>"; };
-		993E56132302CA5F006AA2B7 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = "<group>"; };
-		993E56152302CA5F006AA2B7 /* app.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = app.json; sourceTree = "<group>"; };
 		9952309C21476AF900BBEFAD /* UASClientMaBoardCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UASClientMaBoardCell.h; sourceTree = "<group>"; };
 		9952309D21476AF900BBEFAD /* UASClientMaBoardCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UASClientMaBoardCell.m; sourceTree = "<group>"; };
 		9952309F21476B2400BBEFAD /* UASClientMaForgetCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UASClientMaForgetCell.h; sourceTree = "<group>"; };
@@ -5152,6 +5157,15 @@
 		99C8A817230397940073EF99 /* YRRnBridge.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = YRRnBridge.m; sourceTree = "<group>"; };
 		99D0B9F821378E4C0002DFC4 /* UINavigationController+popGes.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UINavigationController+popGes.m"; sourceTree = "<group>"; };
 		99D0B9F921378E4C0002DFC4 /* UINavigationController+popGes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UINavigationController+popGes.h"; sourceTree = "<group>"; };
+		99D68BE12304E7D500BB781A /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = "<group>"; };
+		99D68BE32304E7D500BB781A /* app.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = app.json; sourceTree = "<group>"; };
+		99D68BEA2304E7D500BB781A /* back-icon@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "back-icon@3x.png"; sourceTree = "<group>"; };
+		99D68BEB2304E7D500BB781A /* back-icon@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "back-icon@2x.png"; sourceTree = "<group>"; };
+		99D68BEC2304E7D500BB781A /* back-icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "back-icon.png"; sourceTree = "<group>"; };
+		99D68BED2304E7D500BB781A /* back-icon-mask.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "back-icon-mask.png"; sourceTree = "<group>"; };
+		99D68BF42305501D00BB781A /* back-icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "back-icon.png"; path = "node_modules/react-navigation-stack/lib/module/views/assets/back-icon.png"; sourceTree = "<group>"; };
+		99D68BF52305501D00BB781A /* back-icon@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "back-icon@2x.png"; path = "node_modules/react-navigation-stack/lib/module/views/assets/back-icon@2x.png"; sourceTree = "<group>"; };
+		99D68BF62305501E00BB781A /* back-icon@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "back-icon@3x.png"; path = "node_modules/react-navigation-stack/lib/module/views/assets/back-icon@3x.png"; sourceTree = "<group>"; };
 		99D9586521211D0100B44CA7 /* UASCountDownView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UASCountDownView.h; sourceTree = "<group>"; };
 		99D9586621211D0100B44CA7 /* UASCountDownView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UASCountDownView.m; sourceTree = "<group>"; };
 		99D9586B2121231B00B44CA7 /* UASAdView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UASAdView.h; sourceTree = "<group>"; };
@@ -12040,24 +12054,6 @@
 			name = Frameworks;
 			sourceTree = "<group>";
 		};
-		993E56122302CA5F006AA2B7 /* bundle */ = {
-			isa = PBXGroup;
-			children = (
-				993E56132302CA5F006AA2B7 /* main.jsbundle */,
-				993E56142302CA5F006AA2B7 /* assets */,
-			);
-			name = bundle;
-			path = UU_RN/bundle;
-			sourceTree = SOURCE_ROOT;
-		};
-		993E56142302CA5F006AA2B7 /* assets */ = {
-			isa = PBXGroup;
-			children = (
-				993E56152302CA5F006AA2B7 /* app.json */,
-			);
-			path = assets;
-			sourceTree = "<group>";
-		};
 		99B02ADC22EED6650014A144 /* RN */ = {
 			isa = PBXGroup;
 			children = (
@@ -12072,7 +12068,7 @@
 		99B02ADD22EED6650014A144 /* Others */ = {
 			isa = PBXGroup;
 			children = (
-				993E56122302CA5F006AA2B7 /* bundle */,
+				99D68BE02304E7D500BB781A /* bundle */,
 			);
 			path = Others;
 			sourceTree = "<group>";
@@ -12249,6 +12245,79 @@
 			path = TIPopGesture;
 			sourceTree = "<group>";
 		};
+		99D68BE02304E7D500BB781A /* bundle */ = {
+			isa = PBXGroup;
+			children = (
+				99D68BE12304E7D500BB781A /* main.jsbundle */,
+				99D68BE22304E7D500BB781A /* assets */,
+			);
+			name = bundle;
+			path = UU_RN/bundle;
+			sourceTree = SOURCE_ROOT;
+		};
+		99D68BE22304E7D500BB781A /* assets */ = {
+			isa = PBXGroup;
+			children = (
+				99D68BF42305501D00BB781A /* back-icon.png */,
+				99D68BF52305501D00BB781A /* back-icon@2x.png */,
+				99D68BF62305501E00BB781A /* back-icon@3x.png */,
+				99D68BE32304E7D500BB781A /* app.json */,
+				99D68BE42304E7D500BB781A /* node_modules */,
+			);
+			path = assets;
+			sourceTree = "<group>";
+		};
+		99D68BE42304E7D500BB781A /* node_modules */ = {
+			isa = PBXGroup;
+			children = (
+				99D68BE52304E7D500BB781A /* react-navigation-stack */,
+			);
+			path = node_modules;
+			sourceTree = "<group>";
+		};
+		99D68BE52304E7D500BB781A /* react-navigation-stack */ = {
+			isa = PBXGroup;
+			children = (
+				99D68BE62304E7D500BB781A /* lib */,
+			);
+			path = "react-navigation-stack";
+			sourceTree = "<group>";
+		};
+		99D68BE62304E7D500BB781A /* lib */ = {
+			isa = PBXGroup;
+			children = (
+				99D68BE72304E7D500BB781A /* module */,
+			);
+			path = lib;
+			sourceTree = "<group>";
+		};
+		99D68BE72304E7D500BB781A /* module */ = {
+			isa = PBXGroup;
+			children = (
+				99D68BE82304E7D500BB781A /* views */,
+			);
+			path = module;
+			sourceTree = "<group>";
+		};
+		99D68BE82304E7D500BB781A /* views */ = {
+			isa = PBXGroup;
+			children = (
+				99D68BE92304E7D500BB781A /* assets */,
+			);
+			path = views;
+			sourceTree = "<group>";
+		};
+		99D68BE92304E7D500BB781A /* assets */ = {
+			isa = PBXGroup;
+			children = (
+				99D68BEA2304E7D500BB781A /* back-icon@3x.png */,
+				99D68BEB2304E7D500BB781A /* back-icon@2x.png */,
+				99D68BEC2304E7D500BB781A /* back-icon.png */,
+				99D68BED2304E7D500BB781A /* back-icon-mask.png */,
+			);
+			path = assets;
+			sourceTree = "<group>";
+		};
 		99F0A0F921266BC000B38B47 /* 日程管理 */ = {
 			isa = PBXGroup;
 			children = (
@@ -17308,6 +17377,7 @@
 				CC30170F1951BABF0059BADA /* f056@2x.png in Resources */,
 				4D7953671DDEF0D6008C1899 /* Newnoread.png in Resources */,
 				276302921FDA964D0047C922 /* Images.xcassets in Resources */,
+				99D68BEF2304E7D600BB781A /* app.json in Resources */,
 				7D0797A31DFF877E00993C5A /* icon_dingwei_nor3.png in Resources */,
 				CC6E181619794BC7006ADA8A /* LoginHighlight@2x.png in Resources */,
 				4DCC89F41DAA321B00C1FDCA /* oa_daka_tableViewsss.png in Resources */,
@@ -17376,6 +17446,7 @@
 				B8812F421D2A442100ACF898 /* dianping.png in Resources */,
 				AA5E65D31F8F440B00B020F2 /* del22.png in Resources */,
 				272A8F5C1CC5FF4400D5EC7B /* uu_work_xinzeng_press.png in Resources */,
+				99D68BF12304E7D600BB781A /* back-icon@2x.png in Resources */,
 				20EA4C3220AD34960055577D /* loadingAd9.png in Resources */,
 				273811281D64128300E95044 /* crm_main_titleBgShort.png in Resources */,
 				7D1889831F6795DB009E79ED /* icon_customCenter_nor3.png in Resources */,
@@ -17435,6 +17506,7 @@
 				CC30169E1951BABF0059BADA /* f000.png in Resources */,
 				CC22EAFD1A6E6F8800FAB7AF /* 呕吐.png in Resources */,
 				27DB549C20DB827F00BAB4C7 /* idl-license.face-ios in Resources */,
+				99D68BF32304E7D600BB781A /* back-icon-mask.png in Resources */,
 				274816901D3CCCE500F0186F /* gpsselected.png in Resources */,
 				CC3AC3D619834415000BB7E8 /* im_photo_camera_press.png in Resources */,
 				7D2DA5481DF55FAF00C2C4A8 /* icon_zan_nor333.png in Resources */,
@@ -17473,7 +17545,9 @@
 				B856778C1CD8AFBD0082F244 /* f_static_003.png in Resources */,
 				4D6D46ED1E308DFE0086ABD2 /* JOKaoQshang.png in Resources */,
 				B887D5801CACFFA1001B29AB /* ZFChooseTimeCollectionViewCell.xib in Resources */,
+				99D68BF72305501E00BB781A /* back-icon.png in Resources */,
 				A75FA3B91C72FB86004B2D32 /* cb_green_off.png in Resources */,
+				99D68BF22304E7D600BB781A /* back-icon.png in Resources */,
 				CC3016EC1951BABF0059BADA /* f039.png in Resources */,
 				CC6E182F19794BC7006ADA8A /* SignUpPasswordIcon@2x.png in Resources */,
 				27ED47401CBB4D1800CAB797 /* uu_me_uaszhanghu.png in Resources */,
@@ -17576,7 +17650,6 @@
 				CC30175C1951BABF0059BADA /* f095.png in Resources */,
 				2732E7EC1D1A248900B2789F /* uu_crm_round.png in Resources */,
 				CC6E182319794BC7006ADA8A /* RegistrationHighlight@2x.png in Resources */,
-				993E56162302CA60006AA2B7 /* main.jsbundle in Resources */,
 				CC6E186F19794BC7006ADA8A /* pub_record_button@2x.png in Resources */,
 				CCE2415018FFB8EB00A3CB5A /* recorder_trash_can2.png in Resources */,
 				20EA4C4220AD34960055577D /* loadingAd46.png in Resources */,
@@ -17736,6 +17809,7 @@
 				B8812F3A1D2A355000ACF898 /* xingxing_anxin.png in Resources */,
 				CC3017351951BABF0059BADA /* f075@2x.png in Resources */,
 				A71DE5141C895FEA009C53FD /* contractCompanyFriend.jpeg in Resources */,
+				99D68BEE2304E7D600BB781A /* main.jsbundle in Resources */,
 				20EA4C5920AD34960055577D /* loadingAd19.png in Resources */,
 				B856778D1CD8AFBD0082F244 /* f_static_004.png in Resources */,
 				27F608541C7ED9CF00948A9D /* icon_write_bule.png in Resources */,
@@ -17769,6 +17843,7 @@
 				CC875A4B19361892007D2DA1 /* pub.txt in Resources */,
 				2722D1B41CB791CF0039D916 /* uu_background_chabai.png in Resources */,
 				CC6E181D19794BC7006ADA8A /* new_top@2x.png in Resources */,
+				99D68BF92305501E00BB781A /* back-icon@3x.png in Resources */,
 				2721E9131D2E4303000A6F5A /* uu_pengyouquan_jiantou.png in Resources */,
 				CC1CE4E61A0CD0FC00F9A713 /* icon_not_found@2x.png in Resources */,
 				7D40E25B1EEF8BFA00D40535 /* icon_delete3_nor3.png in Resources */,
@@ -17985,6 +18060,7 @@
 				278AAA9D1C8D0BC5002F8C81 /* im_myvideo.png in Resources */,
 				27259F9D1D2A37C900E30D1F /* uu_crm_state9.png in Resources */,
 				CCC7B037197FA18900A828A8 /* im_tab_normal.png in Resources */,
+				99D68BF82305501E00BB781A /* back-icon@2x.png in Resources */,
 				20AF4B9220ABBA2700C341CB /* loading29.png in Resources */,
 				B85677AF1CD8AFBD0082F244 /* f_static_038.png in Resources */,
 				B8ED16F11CDAEE8900BD9371 /* Newguanzhu.png in Resources */,
@@ -18563,7 +18639,6 @@
 				20EA4C3C20AD34960055577D /* loadingAd51.png in Resources */,
 				CC3A1427195851280054127B /* v_cammer@2x.png in Resources */,
 				CCE2415118FFB8EB00A3CB5A /* recorder_trash_can2@2x.png in Resources */,
-				993E56172302CA60006AA2B7 /* app.json in Resources */,
 				CC6E186119794BC7006ADA8A /* feeds_play_btn@2x.png in Resources */,
 				7D736AE81E0BE3DE0035B25B /* icon_banci_nor3.png in Resources */,
 				272F120A1CC4D95100452A0D /* uu_work_chaxun_press.png in Resources */,
@@ -18696,6 +18771,7 @@
 				CC6E17DB19794BC7006ADA8A /* im_video_play_press_@2x.jpeg in Resources */,
 				7D3443B61DEE6DEB00B1FAD8 /* icon_back_nor2.png in Resources */,
 				CC6E17E619794BC7006ADA8A /* 4_button_n@2x.png in Resources */,
+				99D68BF02304E7D600BB781A /* back-icon@3x.png in Resources */,
 				20AF4B7720ABBA2700C341CB /* loading44.png in Resources */,
 				20AF4B7920ABBA2700C341CB /* loading51.png in Resources */,
 				CC6E179419794BC7006ADA8A /* set_fans@2x.png in Resources */,

+ 2 - 0
shiku_im/shiku_im/RN/Controllers/YRReactVC.h

@@ -11,6 +11,8 @@ NS_ASSUME_NONNULL_BEGIN
 
 @interface YRReactVC : UASBaseVC
 
+@property(copy,nonatomic)NSString *moduleName;
+
 @end
 
 NS_ASSUME_NONNULL_END

+ 48 - 7
shiku_im/shiku_im/RN/Controllers/YRReactVC.m

@@ -6,6 +6,7 @@
 //
 
 #import "YRReactVC.h"
+#import "UINavigationController+popGes.h"
 #import <React/RCTRootView.h>
 #import <React/RCTBundleURLProvider.h>
 #import <CodePush/CodePush.h>
@@ -16,6 +17,8 @@
 //├────────────┼───────────────────────────────────────┤
 //│ Staging    │ if4T49oStVOr08rU6SJaPJQmFK3O4ksvOXqog │
 
+//ReactNative使用过的内存不释放,因此采用缓存机制控制内存
+static NSMutableDictionary * rootDic = nil;
 
 @interface YRReactVC ()
 
@@ -37,16 +40,44 @@
     
     jsCodeLocation = [CodePush bundleURL];
     
+    self.moduleName = self.moduleName?:@"UU_RN";
     
     NSString * strUrl = @"http://10.1.80.96:8081/index.bundle?platform=ios";
     jsCodeLocation = [NSURL URLWithString:strUrl] ;
     
-    RCTRootView * rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"UU_RN"
-                                                  initialProperties:@{@"UU":@"UU_RN"}
-                                                      launchOptions:nil];
-    
-    
-    self.view = rootView;
+    if (!rootDic) {
+        
+        rootDic = [NSMutableDictionary dictionary];
+        
+        
+        RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"UU_RN"
+                                                     initialProperties:@{@"UU":@"UU_RN"}
+                                                         launchOptions:nil];
+        
+        [rootDic setObject:rootView forKey:self.moduleName];
+        
+        rootView.loadingView.hidden = NO;
+        
+        
+    }else{
+        
+        if (!rootDic[self.moduleName]) {
+            
+            RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation moduleName:@"UU_RN"
+                                                         initialProperties:@{@"UU":@"UU_RN"}
+                                                             launchOptions:nil];
+            
+            [rootDic setObject:rootView forKey:self.moduleName];
+            
+            
+            rootView.loadingView.hidden = NO;
+            
+        }
+        
+    }
+    
+    
+    self.view = (RCTRootView *)rootDic[self.moduleName];
     
     [self addNotification];
     
@@ -55,6 +86,15 @@
 -(void)addNotification{
     //返回跳入界面
     [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(backAction) name:@"YRReactNativeShouldBack" object:nil];
+    //侧滑返回支持
+    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(gestureEnabled:) name:@"YRReactNativeGestureEnabled" object:nil];
+    
+}
+
+
+-(void)gestureEnabled:(NSNotification *)notification{
+    
+    self.im_interactivePopDisabled = ![notification.object boolValue];
     
 }
 
@@ -62,6 +102,8 @@
     
     [[NSNotificationCenter defaultCenter] removeObserver:self name:@"YRReactNativeShouldBack" object:nil];
     
+    [[NSNotificationCenter defaultCenter] removeObserver:self name:@"YRReactNativeGestureEnabled" object:nil];
+ 
 }
 
 -(void)viewWillAppear:(BOOL)animated{
@@ -73,5 +115,4 @@
 }
 
 
-
 @end

+ 12 - 0
shiku_im/shiku_im/RN/Models/YRRnBridge.m

@@ -31,6 +31,18 @@ RCT_EXPORT_METHOD(goBack){
     
     [[NSNotificationCenter defaultCenter] postNotificationName:@"YRReactNativeShouldBack" object:nil];
     
+}
+
+RCT_EXPORT_METHOD(gestureEnabled:(BOOL)enabled){
+    
+    [[NSNotificationCenter defaultCenter] postNotificationName:@"YRReactNativeGestureEnabled" object:@(enabled)];
+    
+}
+
+-(void)dealloc{
+    
+    
+    
 }
 
 @end

+ 0 - 2
shiku_im/shiku_im/controller/JOAddressBookVC.m

@@ -26,12 +26,10 @@
 
 #import "MJExtension.h"//json解析
 
-
 #import "JXGroupViewController.h"//管理群
 
 #import "JONewPersonDetailVC.h"//个人资料新界面
 
-
 #import "ChineseString.h"//指示条
 
 #import "JOABFriendsVC.h"//UU好友

+ 0 - 1
shiku_im/shiku_im/controller/JOMsgViewController.m

@@ -4762,7 +4762,6 @@
      - (void)buttonAction
      {
          
-         
          //LYHealthKitManage *manage = [LYHealthKitManage shareInstance];
          // __weak typeof(self) weakSelf = self;
          

+ 48 - 0
shiku_im/shiku_im/controller/myOA/WorkTools/UASWorkManager.m

@@ -3605,6 +3605,7 @@
         [self loadPunchWorkClassCompleted:nil];
         [self loadPunchAlreadData];
         [self loadPunchAdminData];
+        [self loadIsAdmin];
         
     });
     
@@ -4192,6 +4193,53 @@
     
 }
 
+-(void)loadIsAdmin{
+    
+    
+    dispatch_async(dispatch_get_global_queue(0, 0), ^{
+        
+        NSString *sessionId=[[NSUserDefaults standardUserDefaults] stringForKey:@"sessionId"];
+        NSString *ip=[[NSUserDefaults standardUserDefaults] objectForKey:@"ipAndPort"];
+        NSString *emcode=[[NSUserDefaults standardUserDefaults] stringForKey:@"erpaccount"];
+        NSString *master = [[[NSUserDefaults standardUserDefaults] objectForKey:@"masterDic"]objectForKey:@"ma_user"];
+        NSString *sessionUser = [[NSUserDefaults standardUserDefaults] objectForKey:@"erpaccount"];
+        
+        NSString *url = [NSString stringWithFormat:@"%@mobile/crm/isSysAdmin.action?em_code=%@&master=%@&sessionUser=%@&sessionId=%@",ip,emcode,master,sessionUser,sessionId];
+        
+        
+        url = [url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
+        
+        UASNetworkManager *manager = [UASNetworkManager shareManager];
+        manager.responseSerializer = [AFJSONResponseSerializer serializer];
+        
+        //拼接sessionID
+        NSString *paramSessionId=[@"" stringByAppendingFormat:@"JSESSIONID=%@",sessionId];
+        //设置cookie
+        [manager.requestSerializer setValue:paramSessionId forHTTPHeaderField:@"Cookie"];
+        [manager.requestSerializer setValue:[NSString stringWithFormat:@"%@",g_sessionUser] forHTTPHeaderField:@"sessionUser"];
+        [manager request:url method:POST parameters:nil progress:nil success:^(NSURLSessionDataTask *task, id responseObject) {
+            NSString *sessionId = [NSString stringWithFormat:@"%@",responseObject[@"sessionId"]];
+            if (![sessionId isEqualToString:@"(null)"]) {
+                [[NSUserDefaults standardUserDefaults] setObject:sessionId forKey:@"sessionId"];
+            }
+            
+            NSString *admin = [NSString stringWithFormat:@"%@",responseObject[@"result"]];
+            
+            
+            [UASUserInfo shareManager].isAdmin = [admin isEqualToString:@"admin"]?YES:NO;
+            
+            
+        } failure:^(NSURLSessionDataTask *task, NSError *error) {
+            
+            
+        }];
+        
+    });
+    
+}
+
+
+
 -(void)loadPunchAdminData{
     
     dispatch_async(dispatch_get_global_queue(0, 0), ^{

+ 4 - 2
shiku_im/shiku_im/文件夹1/ReportMenuVC.m

@@ -333,11 +333,13 @@ NSString * cellID = @"cellID";
     
     //    DataSearcherModel * model = _alldataArr[section];
     if ([_alldataArr[section] count] > 9) {
+        
         return 9;
-    }
-    else{
+        
+    }else{
         
         return  [_alldataArr[section] count];
+        
     }
     
     

+ 11 - 0
shiku_im/shiku_im/文件夹3/MainView/UserInfo/UASUserInfo.h

@@ -87,4 +87,15 @@ static NSString * const UserDefaultRemindRepeatStr = @"UserDefaultRemindRepeatSt
  */
 @property(assign,nonatomic)CGFloat scale;
 
+/**
+ 当前账号是否是管理员
+ */
+@property(assign,nonatomic)BOOL isAdmin;
+
+
+/**
+ 测试用,是否用新表单
+ */
+@property(assign,nonatomic)BOOL isNewDocu;
+
 @end