Selaa lähdekoodia

1.横屏锁屏再次处理

huangxiaodong 11 kuukautta sitten
vanhempi
commit
b97db6e76c
1 muutettua tiedostoa jossa 38 lisäystä ja 1 poistoa
  1. 38 1
      创维盒子/双子星云手机/AppDelegate/SceneDelegate.m

+ 38 - 1
创维盒子/双子星云手机/AppDelegate/SceneDelegate.m

@@ -43,6 +43,9 @@
 #import "QRCodeScanForChangeDeviceViewController.h"
 #import "customToastVew.h"
 #import "DFPlayer.h"
+#import "UIInterface+HXRotation.h"
+#import "imageDetailsScrollViewController.h"
+#import "videoPlayByAVPlayerViewController.h"
 
 @interface SceneDelegate ()<SetUsePWDViewControllerDelegate,GuideViewControllerDelegate,UITabBarControllerDelegate>
 @property(nonatomic, strong)   CalculatorViewController *calculatorVC;
@@ -570,6 +573,12 @@
 
 
 - (void)sceneDidBecomeActive:(UIScene *)scene  API_AVAILABLE(ios(13.0)){
+    
+    BOOL isPrivacyMode = [HWDataManager getBoolWithKey:Const_Have_Add_Device_Privacy_Mode];
+    if(!isPrivacyMode){
+        return;
+    }
+    
     //控制2秒内回到前台不显示密码界面
     long seconds =  [iTools getNowTimeStampSS];
     if(_preEnterBackgroundTime > 0){
@@ -585,7 +594,35 @@
         
         return;
     }
-    [self showCalculatorVC];
+    
+    BOOL isNeeddelayedType = NO;
+    //这里强制竖屏 处理图片详情 和视频详情的横屏情况
+    BaseNavigationController*mainNav =  ksharedAppDelegate.mainTabBar.selectedViewController;
+    if([mainNav isKindOfClass:[BaseNavigationController class]]){
+        NSArray* vcArr =  mainNav.viewControllers;
+        
+        if(vcArr.count >= 2){
+            UIViewController *curVC = vcArr.lastObject;
+            if([curVC isKindOfClass:[imageDetailsScrollViewController class]]
+               ||[curVC isKindOfClass:[videoPlayByAVPlayerViewController class]]){
+                //切换到竖屏
+                [curVC hx_rotateToInterfaceOrientation:UIInterfaceOrientationPortrait];
+                ksharedAppDelegate.supportScreenRotateType = NO;
+                isNeeddelayedType = YES;
+            }
+        }
+    }
+    
+    
+    if(isNeeddelayedType){
+        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+            [self showCalculatorVC];
+        });
+    }
+    else{
+        [self showCalculatorVC];
+    }
+    
 }