Browse Source

处理合成页面气泡交互效果

Steven 8 months ago
parent
commit
0490ea8336

+ 4 - 4
KulexiuForTeacher/KulexiuForTeacher.xcodeproj/project.pbxproj

@@ -1064,7 +1064,7 @@
 		BCECE2252B3D648700C0D555 /* CourseFileDisplayView.m in Sources */ = {isa = PBXBuildFile; fileRef = BCECE2232B3D648700C0D555 /* CourseFileDisplayView.m */; };
 		BCED0AEB2C463F9600369AED /* KSMergeEnginePlayer.m in Sources */ = {isa = PBXBuildFile; fileRef = BCED0AE92C463F9500369AED /* KSMergeEnginePlayer.m */; };
 		BCED0AF12C464B0700369AED /* CloudAccompanyLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BCED0AF02C464B0600369AED /* CloudAccompanyLibrary.framework */; };
-		BCED0AF32C464B1600369AED /* KSToolLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BCED0AF22C464B1600369AED /* KSToolLibrary.framework */; };
+		BCED0AFF2C467D9200369AED /* KSToolLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BCED0AFE2C467D9200369AED /* KSToolLibrary.framework */; };
 		BCED5CAA284F5D8D009A42DE /* FriendListModel.m in Sources */ = {isa = PBXBuildFile; fileRef = BCED5CA9284F5D8D009A42DE /* FriendListModel.m */; };
 		BCED5CB4285083AC009A42DE /* ShareMusicViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BCED5CB3285083AC009A42DE /* ShareMusicViewController.m */; };
 		BCF1BA5427F5CB5800FA36C4 /* LiveSeatApplyView.m in Sources */ = {isa = PBXBuildFile; fileRef = BCF1BA5327F5CB5800FA36C4 /* LiveSeatApplyView.m */; };
@@ -2855,7 +2855,7 @@
 		BCED0AE92C463F9500369AED /* KSMergeEnginePlayer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KSMergeEnginePlayer.m; sourceTree = "<group>"; };
 		BCED0AEA2C463F9600369AED /* KSMergeEnginePlayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KSMergeEnginePlayer.h; sourceTree = "<group>"; };
 		BCED0AF02C464B0600369AED /* CloudAccompanyLibrary.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = CloudAccompanyLibrary.framework; sourceTree = "<group>"; };
-		BCED0AF22C464B1600369AED /* KSToolLibrary.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = KSToolLibrary.framework; sourceTree = "<group>"; };
+		BCED0AFE2C467D9200369AED /* KSToolLibrary.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = KSToolLibrary.framework; sourceTree = "<group>"; };
 		BCED5CA8284F5D8D009A42DE /* FriendListModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FriendListModel.h; sourceTree = "<group>"; };
 		BCED5CA9284F5D8D009A42DE /* FriendListModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FriendListModel.m; sourceTree = "<group>"; };
 		BCED5CB2285083AC009A42DE /* ShareMusicViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ShareMusicViewController.h; sourceTree = "<group>"; };
@@ -2919,7 +2919,7 @@
 				BC8B6E612856ED0600866917 /* libWeiboSDK.a in Frameworks */,
 				BC8B6E532856ED0600866917 /* UMAPM.framework in Frameworks */,
 				2779333F27E314640010E277 /* CoreVideo.framework in Frameworks */,
-				BCED0AF32C464B1600369AED /* KSToolLibrary.framework in Frameworks */,
+				BCED0AFF2C467D9200369AED /* KSToolLibrary.framework in Frameworks */,
 				BC8B6E572856ED0600866917 /* UMDevice.framework in Frameworks */,
 				BCED0AF12C464B0700369AED /* CloudAccompanyLibrary.framework in Frameworks */,
 				BC3A55662BAA799B002E1616 /* KSTunerLibrary.framework in Frameworks */,
@@ -5205,7 +5205,7 @@
 			children = (
 				BC00A65B2BB58F1700231B74 /* LLPhotoBrowse.bundle */,
 				BC00A6592BB58F0000231B74 /* WMPlayer.bundle */,
-				BCED0AF22C464B1600369AED /* KSToolLibrary.framework */,
+				BCED0AFE2C467D9200369AED /* KSToolLibrary.framework */,
 				BC3A55612BAA798A002E1616 /* KSTunerLibrary.framework */,
 				BCED0AF02C464B0600369AED /* CloudAccompanyLibrary.framework */,
 				BC24570E286C437D00D1F7C0 /* SoundFontFile */,

+ 1 - 1
KulexiuForTeacher/KulexiuForTeacher.xcodeproj/xcshareddata/xcschemes/KulexiuForTeacher.xcscheme

@@ -93,7 +93,7 @@
       buildConfiguration = "Debug">
    </AnalyzeAction>
    <ArchiveAction
-      buildConfiguration = "Release"
+      buildConfiguration = "TEST"
       revealArchiveInOrganizer = "YES">
    </ArchiveAction>
 </Scheme>

+ 4 - 0
KulexiuForTeacher/KulexiuForTeacher/Common/Base/AccompanyWebView/KSAccompanyWebViewController.m

@@ -664,6 +664,9 @@
                 }
                 else {
                     if (self.AQManager && self.AQManager.audioUrl) {
+                        if (self->_videoRecordManager) {
+                            [self.videoRecordManager removeDisplay];
+                        }
                         self.recordUrl = self.AQManager.audioUrl;
                         [self.view addSubview:mergeView];
                         [mergeView mas_makeConstraints:^(MASConstraintMaker *make) {
@@ -683,6 +686,7 @@
                         NSInteger micDelay = [UserDefaultObjectForKey(@"micDelay") integerValue];
                         NSInteger defaultDelay = self.offsetTime + micDelay;
                         [mergeView configWithVideoUrl:self.videoRecordManager.videoFileURL bgAudioUrl:self.bgAudioUrl remoteBgUrl:self.accompanyUrl  recordUrl:self.recordUrl offsetTime:defaultDelay mergeCallback:^{
+                            [weakSelf appEnterForeground];
                             [weakSelf musicPublishCallBack:content];
                         }];
                     }

+ 4 - 2
KulexiuForTeacher/KulexiuForTeacher/Common/MediaMerge/AudioMerge/KSMediaMergeView.m

@@ -219,7 +219,6 @@
     [self downloadAccompany];
     [self downloadAudio];
     dispatch_group_notify(self.requestGroup, dispatch_get_main_queue(), ^{
-        [LOADING_MANAGER removeCustomLoading];
         [self configUI];
         [self configPlayer];
     });
@@ -241,7 +240,8 @@
 
 // 修改文件速度
 - (void)modifyBgSpeed:(NSURL *)musicUrl callback:(void(^)(void))callback {
-    if (self.musicSpeed != 1) {
+    if (self.musicSpeed != 1.0) {
+        [LOADING_MANAGER showCustomLoading:@"资源下载中"];
         [KSMediaEditor modifyAudioFileSpeed:musicUrl rate:self.musicSpeed completion:^(NSString * _Nonnull outPath, BOOL isSuccess, NSString * _Nonnull desc) {
             if (isSuccess) {
                 self.bgAudioUrl = [NSURL fileURLWithPath:outPath];
@@ -912,6 +912,7 @@
 
 - (void)videoPlayerIsReadyPlay:(AVPlayer *)player {
     if (self.mergePlayer.isReady) {
+        [LOADING_MANAGER removeCustomLoading];
         [self startPlay];
     }
 }
@@ -954,6 +955,7 @@
 
 - (void)enginePlayerIsReadyPlay:(KSMergeEnginePlayer *)player {
     dispatch_main_async_safe(^{
+        [LOADING_MANAGER removeCustomLoading];
         [self refreshTotalTime];
         if (self.isVideoPlay) {
             if (self.videoView.isReady) {

+ 22 - 3
KulexiuForTeacher/KulexiuForTeacher/Common/MediaMerge/AudioMerge/KSMergeAudioControlView.m

@@ -101,6 +101,12 @@
     self.recordSlider.value = recordVolume;
     self.bgVolume = bgVolume;
     self.bgSlider.value = bgVolume;
+    // 处理数据
+    self.recordBubbleLabel.text = [NSString stringWithFormat:@"%zd",bgVolume];
+    self.recordCenterX.constant = 30 + ((recordVolume *1.0)/ 100)*237;
+    
+    self.bgVolumeBubble.text = [NSString stringWithFormat:@"%zd",bgVolume];
+    self.bgCenterX.constant = 30 + ((bgVolume *1.0)/ 100)*237;
 }
 
 + (instancetype)shareIntance {
@@ -128,9 +134,17 @@
 
 - (void)configRecordVolumeValue:(NSInteger)volume {
     self.recordVolume = volume;
-    self.recordBubble.hidden = NO;
+    
     self.recordBubbleLabel.text = [NSString stringWithFormat:@"%zd",volume];
     self.recordCenterX.constant = 30 + ((volume *1.0)/ 100)*237;
+    
+    [UIView animateWithDuration:0.1f animations:^{
+        [self layoutIfNeeded];
+    } completion:^(BOOL finished) {
+        if (finished) {
+            self.recordBubble.hidden = NO;
+        }
+    }];
     if (self.callback) {
         self.callback(MERGEACTION_MODIFY, self.recordVolume, self.bgVolume, self.offsetTime);
     }
@@ -138,9 +152,15 @@
 
 - (void)configBgVolumeValue:(NSInteger)volume {
     self.bgVolume = volume;
-    self.bgBubble.hidden =NO;
     self.bgVolumeBubble.text = [NSString stringWithFormat:@"%zd",volume];
     self.bgCenterX.constant = 30 + ((volume *1.0)/ 100)*237;
+    [UIView animateWithDuration:0.1f animations:^{
+        [self layoutIfNeeded];
+    } completion:^(BOOL finished) {
+        if (finished) {
+            self.bgBubble.hidden =NO;
+        }
+    }];
     if (self.callback) {
         self.callback(MERGEACTION_MODIFY, self.recordVolume, self.bgVolume, self.offsetTime);
     }
@@ -294,7 +314,6 @@
         [self.bgSlider setValue:value animated:YES];
         [self configBgVolumeValue:value];
     }
-    
 }
 
 #pragma mark ------ lazying

BIN
KulexiuForTeacher/KulexiuForTeacher/ToolKit/KSToolLibrary.framework/KSToolLibrary