Forráskód Böngészése

fix 音乐框边界问题

huzhiqiang 3 éve
szülő
commit
4f79f895de

+ 6 - 4
BFFramework/Classes/Stuckpoint/View/PQStuckPointCuttingView.swift

@@ -189,25 +189,27 @@ class PQStuckPointCuttingView: UIView {
 
     func addData() {
         // 1,选择区内的线个数 ,划动区域后 个数会变???
-        wavSelectCount = Int(ceil(cropViewWidth / (frequencyWidth + frequencyMargin)))
+        wavSelectCount = Int(ceil((cropViewWidth - frequencyWidth) / (frequencyWidth + frequencyMargin)) + 1)
         
-        cropViewWidth = CGFloat(wavSelectCount) * (frequencyWidth + frequencyMargin) + frequencyWidth
+        cropViewWidth = CGFloat(wavSelectCount - 1) * (frequencyWidth + frequencyMargin) + frequencyWidth
      
         // 2竖线一个间隔代表多少 S 是动态的
         oneMarginTime = (stuckPointEndTime - stuckPointStartTime) / CGFloat(wavSelectCount - 1)
         
         // 3,一共绘制的竖线个数
-        wavTotalCount = Int(ceil(videoDuration / oneMarginTime))
+        wavTotalCount = Int(ceil(videoDuration / oneMarginTime) + 1)
 
         timeRange = oneMarginTime * 10
         // 显示时间 label 的个数 , -1 不够整倍数就不显示时间了
         let timeLabelCount = Int(wavTotalCount / 10)
-        contentWidth = CGFloat(wavTotalCount) * (frequencyWidth + frequencyMargin) + frequencyWidth + (cScreenWidth - cropViewWidth)
+        
+        contentWidth = CGFloat(wavTotalCount - 1) * (frequencyWidth + frequencyMargin) + frequencyWidth + (cScreenWidth - cropViewWidth)
         if contentWidth < scrollView.frame.width {
             contentWidth = scrollView.frame.width
         }
         scrollView.contentSize = CGSize(width: contentWidth, height: scrollView.frame.height)
         
+        HHZPrint("框内个数:\(wavSelectCount), 总线条数:\(wavTotalCount), 框宽:\(cropViewWidth)")
         
         for index in 0 ... timeLabelCount {
             scrollView.viewWithTag(100 + index)?.removeFromSuperview()