一、唱片旋转效果(360°无限顺时针旋转)

    func animationRotateCover() {
        coverImageView.layer.removeAllAnimations()

        let animation = CABasicAnimation(keyPath: "transform.rotation")
        animation.fromValue = 0
        animation.toValue = CGFloat.pi * 2
        animation.duration = 5
        animation.isCumulative = true
        animation.repeatCount = Float.infinity
        coverImageView.layer.add(animation, forKey: nil)
    }

 

  二、防止文件被 iCloud 同步备份

    NSURLIsExcludedFromBackupKey

 

  三、禁止 UICollectionView reload/insert 动画

      UIView.performWithoutAnimation {
           self.videoPartCollectionView.reloadData()
      }

 

  四、Objective-C 中的 performSelector 在 Swift 里变成了 sendAction

    var rightTappedSelector: Selector?

    @IBAction func rightTappedAction(_ sender: Any) {
        guard let selector = rightTappedSelector else {
            return
        }
        rightButton.sendAction(selector, to: nil, for: nil)
    }

 

  五、获得 CGAffineTransform 的 rotation 信息

extension CGAffineTransform {

    func getTransformRotation() -> CGFloat {
        return atan2(self.b, self.a)  * 180 / CGFloat.pi
    }
    
}

 

  六、获取 Date 的 nano 时间

extension Date {

    func nanosecond() -> Int64 {
        let nanosecond: Int64 = Int64(Calendar.current.dateComponents([.nanosecond], from: self).nanosecond ?? 0)
        return Int64(self.timeIntervalSince1970 * 1000000000) + nanosecond
    }

}

 

  七、AVCapturePhotoOutput.capturePhoto 崩溃的问题

    不要让 UIViewController 实现 AVCapturePhotoCaptureDelegate ,要跟 AVCam 例子一样弄一个 class PhotoCaptureDelegate: NSObject, AVCapturePhotoCaptureDelegate 就不崩溃了,什么鬼问题

 

相关文章:

  • 2021-05-25
  • 2022-12-23
  • 2022-12-23
  • 2021-07-07
  • 2022-12-23
  • 2021-08-19
猜你喜欢
  • 2021-10-13
  • 2022-02-11
  • 2022-01-30
  • 2021-11-23
  • 2022-01-04
  • 2021-09-15
  • 2021-11-29
相关资源
相似解决方案