jsonwang 3 роки тому
батько
коміт
f8ad7fa473

+ 20 - 3
BFFramework/Classes/Stuckpoint/View/PQSpeedSettingView.swift

@@ -53,7 +53,7 @@ class PQSpeedSettingView: UIView {
                      "1.0x\n0.3x",
                      "1.0x\n0.2x",
                      "自定义\n快慢速"]
-                let tempMaxSpeed = [6, 5, 4, 3, 2.4, 1.0, 0.0]
+                let tempMaxSpeed = [6,   5,   3,   2.4, 1.0, 1.0, 0.0]
                 let tempMinSpeed = [1.2, 1.0, 0.5, 0.4, 0.3, 0.2, 0.0]
                 for (index, str) in tempTitle.enumerated() {
                     let model = PQSpeedTitleModel()
@@ -85,7 +85,7 @@ class PQSpeedSettingView: UIView {
     }
 
     // 点击回调 maxSpeed,minSpeed 同时为0 说明点击的是自定义速度
-    public var selectSpeedCallBack: ((_ maxSpeed: Float, _ minSpeed: Float) -> Void)?
+    public var selectSpeedCallBack: ((_ maxSpeed: Float, _ minSpeed: Float,_ selectIndex:Int) -> Void)?
 
     override init(frame: CGRect) {
         super.init(frame: frame)
@@ -95,6 +95,23 @@ class PQSpeedSettingView: UIView {
     required init?(coder _: NSCoder) {
         fatalError("init(coder:) has not been implemented")
     }
+    
+    //设置默认选择的
+    ///
+    /// - Parameter index: 第几位 从0 开始
+    func setSelectItem(index:Int) {
+       
+        lastSelectModel?.isSelected = false
+        lastSelectModel = datas[index]
+        lastSelectModel?.isSelected = true
+        titleCollectionView.reloadData()
+ 
+        //发出回调,调用方走统一处理逻辑
+        if selectSpeedCallBack != nil {
+            BFLog(message: "选择的速度为 max: \(lastSelectModel?.maxSpeed ?? 0.0) min: \(lastSelectModel?.minSpeed ?? 0.0)")
+            selectSpeedCallBack!(lastSelectModel?.maxSpeed ?? 0.0, lastSelectModel?.minSpeed ?? 0.0,index)
+        }
+    }
 }
 
 extension PQSpeedSettingView: UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout, UIScrollViewDelegate {
@@ -119,7 +136,7 @@ extension PQSpeedSettingView: UICollectionViewDelegate, UICollectionViewDataSour
 
         if selectSpeedCallBack != nil {
             BFLog(message: "选择的速度为 max: \(lastSelectModel?.maxSpeed ?? 0.0) min: \(lastSelectModel?.minSpeed ?? 0.0)")
-            selectSpeedCallBack!(lastSelectModel?.maxSpeed ?? 0.0, lastSelectModel?.minSpeed ?? 0.0)
+            selectSpeedCallBack!(lastSelectModel?.maxSpeed ?? 0.0, lastSelectModel?.minSpeed ?? 0.0,indexPath.row)
         }
     }