| | |
| | | import UIKit |
| | | |
| | | enum Fight_lessonType { |
| | | case success |
| | | case fail |
| | | case none |
| | | case success |
| | | case fail |
| | | case none |
| | | } |
| | | |
| | | class ListenFight_lesson_1_CCell: UICollectionViewCell { |
| | | |
| | | @IBOutlet weak var label_title: UILabel! |
| | | @IBOutlet weak var image_state: UIImageView! |
| | | @IBOutlet weak var image_cover: UIImageView! |
| | | @IBOutlet weak var view_topHandle: UIView! |
| | | override func awakeFromNib() { |
| | | super.awakeFromNib() |
| | | image_state.alpha = 0 |
| | | image_state.transform = .init(scaleX: 0.1, y: 0.1) |
| | | label_title.isHidden = true |
| | | image_cover.contentMode = .scaleToFill |
| | | } |
| | | @IBOutlet weak var label_title: UILabel! |
| | | @IBOutlet weak var image_state: UIImageView! |
| | | @IBOutlet weak var image_cover: UIImageView! |
| | | @IBOutlet weak var view_topHandle: UIView! |
| | | override func awakeFromNib() { |
| | | super.awakeFromNib() |
| | | image_state.alpha = 0 |
| | | image_state.transform = .init(scaleX: 0.1, y: 0.1) |
| | | label_title.isHidden = true |
| | | image_cover.contentMode = .scaleToFill |
| | | } |
| | | |
| | | func setState(state:Fight_lessonType){ |
| | | func setState(state:Fight_lessonType){ |
| | | |
| | | switch state { |
| | | case .success: |
| | | image_state.image = UIImage(named: "icon_success") |
| | | UIView.animate(withDuration: 0.6, delay: 0, usingSpringWithDamping: 0.3, initialSpringVelocity: 0.4, options: .layoutSubviews) { |
| | | self.image_state.alpha = 1 |
| | | self.image_state.transform = .init(scaleX: 1, y: 1) |
| | | } |
| | | UIView.animate(withDuration: 0.5, delay: 3.0) { |
| | | self.image_state.alpha = 0 |
| | | self.image_state.transform = .init(scaleX: 0.1, y: 0.1) |
| | | } |
| | | case .fail: |
| | | image_state.image = UIImage(named: "icon_fail") |
| | | UIView.animate(withDuration: 0.6, delay: 0, usingSpringWithDamping: 0.3, initialSpringVelocity: 0.4, options: .layoutSubviews) { |
| | | self.image_state.alpha = 1 |
| | | self.image_state.transform = .init(scaleX: 1, y: 1) |
| | | UIView.animate(withDuration: 0.5, delay: 3.0) { |
| | | self.image_state.alpha = 0 |
| | | self.image_state.transform = .init(scaleX: 0.1, y: 0.1) |
| | | } |
| | | } |
| | | case .none: |
| | | image_state.alpha = 0 |
| | | image_state.transform = .init(scaleX: 0.1, y: 0.1) |
| | | } |
| | | } |
| | | switch state { |
| | | case .success: |
| | | image_state.image = UIImage(named: "icon_success") |
| | | UIView.animate(withDuration: 0.6, delay: 0, usingSpringWithDamping: 0.3, initialSpringVelocity: 0.4, options: .layoutSubviews) { |
| | | self.image_state.alpha = 1 |
| | | self.image_state.transform = .init(scaleX: 1, y: 1) |
| | | } |
| | | UIView.animate(withDuration: 0.5, delay: 3.0) { |
| | | self.image_state.alpha = 0 |
| | | self.image_state.transform = .init(scaleX: 0.1, y: 0.1) |
| | | } |
| | | case .fail: |
| | | image_state.image = UIImage(named: "icon_fail") |
| | | UIView.animate(withDuration: 0.6, delay: 0, usingSpringWithDamping: 0.3, initialSpringVelocity: 0.4, options: .layoutSubviews) { |
| | | self.image_state.alpha = 1 |
| | | self.image_state.transform = .init(scaleX: 1, y: 1) |
| | | UIView.animate(withDuration: 0.5, delay: 3.0) { |
| | | self.image_state.alpha = 0 |
| | | self.image_state.transform = .init(scaleX: 0.1, y: 0.1) |
| | | } |
| | | } |
| | | case .none: |
| | | image_state.alpha = 0 |
| | | image_state.transform = .init(scaleX: 0.1, y: 0.1) |
| | | } |
| | | } |
| | | |
| | | func setListen1SubModel(_ model:Listen1SubModel){ |
| | | image_cover.sd_setImage(with: URL(string: model.img)) |
| | | } |
| | | func setListen1SubModel(_ model:Listen1SubModel){ |
| | | image_cover.sd_setImage(with: URL(string: model.img)) |
| | | } |
| | | } |