play-button icon indicating copy to clipboard operation
play-button copied to clipboard

Animation flickering

Open i-tengfei opened this issue 3 years ago • 5 comments

Describe the bug Button flickering on toggle.

https://user-images.githubusercontent.com/1763168/165637065-4b6c7e66-d7b0-48d3-a9dc-4e430dc1e5d7.mov

Environment

  • Xcode [e.g. 13.3.1]
  • Swift [e.g. 5.5]
  • OS: [e.g. iOS Simulator 15]

i-tengfei avatar Apr 27 '22 21:04 i-tengfei

Thank you for your feedback! As mentioned in the Note here there can be flickering on the simulator. Can you confirm the bug in a release build on the device?

fruitcoder avatar May 02 '22 07:05 fruitcoder

After the test, the flickering is more serious on the device.

https://user-images.githubusercontent.com/1763168/166817076-ed79ce76-8a61-45c2-a4db-a6526d3ca0cd.MP4

iPhone 12 iOS 15.4

i-tengfei avatar May 04 '22 20:05 i-tengfei

Do you see the same glitch in the sample code on the device? If not, can you provide a minimal project showing the bug?

fruitcoder avatar May 05 '22 09:05 fruitcoder

Yes it has the same problem in the sample code.

https://user-images.githubusercontent.com/1763168/167319843-e8999483-6fc2-4910-907a-08814d6f0e4e.mov

And it's easy to reproduce.

import UIKit
import PlayButton

class ViewController: UIViewController {
  lazy var playButton: PlayButton = {
    let playButton = PlayButton()
    playButton.addAction(.init(handler: { [weak self] _ in
      guard let self = self else { return }
      if (playButton.isPlay) {
        playButton.setMode(.pause, animated: true)
      } else {
        playButton.setMode(.play, animated: true)
      }
    }), for: .touchUpInside)
    return playButton
  }()

  override func viewDidLoad() {
    super.viewDidLoad()
    
    view.addSubview(playButton)
    playButton.translatesAutoresizingMaskIntoConstraints = false
    playButton.centerYAnchor.constraint(equalTo: view.centerYAnchor).isActive = true
  }
}


i-tengfei avatar May 08 '22 23:05 i-tengfei

Hi @i-tengfei! Could you test if the latest release fixes the issue?

fruitcoder avatar Nov 07 '22 14:11 fruitcoder

closed due to inactivity

fruitcoder avatar Mar 04 '25 16:03 fruitcoder