| 
					
				 | 
			
			
				@@ -168,14 +168,14 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /// 卡点模式标题 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    lazy var sppedTitleLab: UILabel = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let sppedTitleLab = UILabel() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        sppedTitleLab.backgroundColor = .clear 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        sppedTitleLab.textAlignment = .left 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        sppedTitleLab.font = UIFont.boldSystemFont(ofSize: 14) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        sppedTitleLab.textColor = .black 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        sppedTitleLab.text = "节奏变化" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return sppedTitleLab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    lazy var speedTitleLab: UILabel = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let speedTitleLab = UILabel() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        speedTitleLab.backgroundColor = .clear 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        speedTitleLab.textAlignment = .left 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        speedTitleLab.font = UIFont.boldSystemFont(ofSize: 14) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        speedTitleLab.textColor = .black 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        speedTitleLab.text = "节奏变化" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return speedTitleLab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -257,6 +257,7 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return optionlineView 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //固定速度 UI 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var speedSettingView:PQSpeedSettingView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				          
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let speedSettingView = PQSpeedSettingView.init() 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -266,6 +267,7 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             BFLog(message: "maxSpeed is\(maxSpeed) minSpeed \(minSpeed)") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if(maxSpeed == 0 && minSpeed == 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 self?.customSpeedSettingView.isHidden = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                self?.customSpeedSettingView.isJumpSpeedModel = speedSettingView.viewType == 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -275,8 +277,10 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     //自定义速度 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var customSpeedSettingView:PQCustomSpeedSettingView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let customSpeedSettingView = PQCustomSpeedSettingView.init() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let customSpeedSettingView = PQCustomSpeedSettingView.init(frame: CGRect(x: 0, y: cScreenHeigth - 354, width: cScreenWidth, height: 354)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         customSpeedSettingView.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        customSpeedSettingView.isJumpSpeedModel = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return customSpeedSettingView 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				          
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -374,27 +378,36 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lastEditModelBtn = sender 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				          
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         BFLog(message: "sender tag is \(sender.tag)") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(sender.tag == 1){//快慢速卡点 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            speedSettingView.viewType = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            speedSettingView.snp.remakeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                make.left.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                make.right.equalToSuperview() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                make.top.equalTo(editModelLineView.snp_bottom).offset(8) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                make.height.equalTo(44) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //1 ui 调整 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(sender.tag == 1 || sender.tag == 2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            speedSettingView.viewType = sender.tag 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            customSpeedSettingView.isJumpSpeedModel = speedSettingView.viewType == 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				              
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }else if(sender.tag == 2){//跳越卡点 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            speedSettingView.viewType = 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             speedSettingView.snp.remakeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 make.left.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 make.right.equalToSuperview() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 make.top.equalTo(editModelLineView.snp_bottom).offset(8) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                make.height.equalTo(30) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                make.height.equalTo(sender.tag == 1 ? 44 : 30) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            speedSettingView.isHidden = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            speedTitleLab.isHidden = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            sustomSwitchView.isHidden = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            editModelLineView.isHidden = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            speedSettingView.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            speedTitleLab.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            sustomSwitchView.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            editModelLineView.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //2 不同状的业务逻辑 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(sender.tag == 1){// 快慢速 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }else if(sender.tag == 2){//跳跃卡点 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				              
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }else if(sender.tag == 3){//仅音乐 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				              
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     override func viewWillDisappear(_ animated: Bool) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -433,18 +446,14 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         view.addSubview(pointEditerBtn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         view.addSubview(musicEditerBtn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         view.addSubview(customSpeedSettingView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(pointEditRemindLab) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pointEditBGView.addSubview(sppedTitleLab) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pointEditBGView.addSubview(speedTitleLab) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(speedStuckBtn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(jumpPointBtn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(onlyMusicBtn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(editModelLineView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(speedSettingView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(sustomSwitchView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //        view.addSubview(stuckPointCuttingView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -461,30 +470,22 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(24) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.width.equalTo(24) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.right.equalTo(view) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.bottom.equalTo(pointEditerBtn.snp_top).offset(-7) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(290) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         optionlineView.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.right.equalToSuperview() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.bottom.equalTo(pointEditBGView.snp_bottom).offset(-1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditRemindLab.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.top.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(20) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.width.equalTo(80) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         speedStuckBtn.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.top.equalTo(pointEditRemindLab.snp_bottom).offset(8) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -493,59 +494,41 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         jumpPointBtn.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.equalTo(speedStuckBtn.snp_right).offset(10) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            make.top.equalTo(pointEditRemindLab.snp_bottom).offset(8) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            make.top.equalTo(speedStuckBtn.snp_top) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(80) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.width.equalTo(80) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         onlyMusicBtn.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.equalTo(jumpPointBtn.snp_right).offset(10) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            make.top.equalTo(pointEditRemindLab.snp_bottom).offset(8) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            make.top.equalTo(speedStuckBtn.snp_top) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(80) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.width.equalTo(64) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         editModelLineView.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.right.equalToSuperview() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.bottom.equalTo(onlyMusicBtn.snp_bottom).offset(17) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         speedSettingView.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.right.equalToSuperview() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.top.equalTo(editModelLineView.snp_bottom).offset(8) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(44) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        sppedTitleLab.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        speedTitleLab.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.top.equalToSuperview().offset(213) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(20) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.width.equalTo(80) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sustomSwitchView.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            make.top.equalTo(sppedTitleLab.snp_bottom).offset(8) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            make.top.equalTo(speedTitleLab.snp_bottom).offset(8) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(30) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.width.equalTo(180) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        speedSettingView.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            make.left.equalToSuperview() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            make.top.equalTo(sppedTitleLab.snp_bottom).offset(8) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            make.height.equalTo(354) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            make.width.equalTo(cScreenWidth) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @objc func nextBtnClick(sender _: UIButton) { 
			 |