На моей панели инструментов есть несколько ярлыков. Я хочу выполнить цветную анимацию на несколько секунд.

Требование: Когда пользователь касается элементов управления ярлыком, он должен отображать белый цвет от центральной точки ярлыка и должен проходить через размер ярлыка, после чего он должен вернуться к своему исходному цвету.

Например, : при нажатии цифровой клавиатуры в состоянии блокировки экрана. Он подчеркивает, что кнопка нажата, показывая кнопку белого цвета на долю секунды.

Как этого добиться в Swift?

-1
Jayprakash Dubey 6 Сен 2016 в 18:27

3 ответа

@IBAction func buttonPressed(sender: UIButton) {
        UIView.animateWithDuration(0.5, delay: 0.0, options: .TransitionCrossDissolve, animations: {
            self.button.backgroundColor = UIColor.clearColor()
 }, completion: nil)

@IBAction func buttonReleased(sender : UIButton){
            self.button.backgroundColor = UIColor.whiteColor()
 }

Соедините функцию buttonReleased с событием Touch Down Sent Event из раскадровки (пример). Надеюсь, это то, что вы ищете?

1
unniverzal 6 Сен 2016 в 18:29

Вместо UILabel используйте UIButton. Он ведет себя именно так, как вы хотите, а именно как кнопка. Текст в UIButton на самом деле является UILabel, поэтому вы ничего не теряете, используя кнопку вместо метки, и получаете поведение кнопки, о котором вы просите.

2
matt 7 Апр 2018 в 13:12

Это довольно крутой эффект, который я использовал в прошлом. Я думаю, это то, что вы ищете. Надеюсь, это поможет! :

https://github.com/zoonooz/ZFRippleButton

1
David Park 6 Сен 2016 в 17:58