Я хотел бы создать UIButton
, который «дышит», меняет свою альфу от 1,0 до 0,7 и обратно, повторяя. Код довольно прост, но когда анимация запускается, кнопка не доступна. Какая жалость, для кнопки. Я могу понять, почему кнопка не может быть нажата, когда анимация меняет свое положение, но изменение альфы кажется мне совершенно безвредным. Есть ли способ сделать кнопку нажатой, сохраняя анимацию, а не анимацию вручную?Как сделать интерактивный UIButton с анимированной альфой?
3
A
ответ
10
Используйте непрозрачность.
UIButton *btnTest = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btnTest.frame = CGRectMake(0, 0, 100, 100);
[btnTest setTitle:@"Breathe" forState:UIControlStateNormal];
[btnTest addTarget:self action:@selector(btnPressed:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btnTest];
CABasicAnimation *fadeAnimation=[CABasicAnimation animationWithKeyPath:@"opacity"];
fadeAnimation.fromValue=[NSNumber numberWithFloat:0.7];
fadeAnimation.toValue=[NSNumber numberWithFloat:1.0];
fadeAnimation.duration=1.0;
fadeAnimation.repeatCount=INFINITY;
fadeAnimation.autoreverses=YES;
[btnTest.layer addAnimation:fadeAnimation forKey:@"fadeInOut"];
Смежные вопросы
- 1. Как сделать интерактивный текст
- 2. Как я могу сделать интерактивный uiimage?
- 3. Есть ли способ сделать интерактивный интерактивный интерактивный гита?
- 4. JavaFX: как сделать интерактивный текст
- 5. Как сделать интерактивный виджет [Android]
- 6. Android: Как сделать интерактивный ListView с ContextMenu?
- 7. DrawPrimitive с альфой
- 8. Сделать интерактивный список изображений
- 9. Как сделать UIButton сделать снимок?
- 10. Как сделать непрозрачный UIButton?
- 11. CIColorMatrix смещение с альфой
- 12. FormatConvertedBitmap с альфой
- 13. Как сделать Uibutton выбранным
- 14. Как сделать UIButton кругом?
- 15. Сделать представить входной ип-интерактивный
- 16. Функция добавления смеси с альфой
- 17. Как сделать интерактивный твит, похожий на «Acura»
- 18. Как сделать интерактивный график/строки в Java?
- 19. Android Studio: как сделать интерактивный движимый фон?
- 20. Сделать интерактивный массив внутри JavaScript
- 21. Как сделать интерактивный 3D-глобус для сайта
- 22. Как сделать интерактивный макет в Фрагменте
- 23. Как загрузить PNG с альфой с какао?
- 24. сделать всю область ДИВ интерактивный
- 25. Как сделать интерактивный эффект наведения карты?
- 26. Плохой рисунок CGGradient с альфой
- 27. Как сделать форму полностью прозрачной 32-битной альфой?
- 28. Как сделать UIButton с эмблемой фонового изображения?
- 29. Как сделать перемещение UIButton с UIScrollView
- 30. Копирование ID3D11Texture2D с надлежащей альфой
Отлично, это работает. Раньше я пытался анимировать слой вместо кнопки, но я искал свойство alpha и игнорировал «непрозрачность». В любом случае, он не работает с неявной анимацией, вам нужно прикрепить анимацию непосредственно к слою, чтобы кнопка работала. Спасибо! – zoul
Это работает как волшебство. Спасибо, но горячо, чтобы остановить анимацию? – San
Чтобы остановить анимацию, вызовите '[btnTest.layer removeAnimationForKey: @" fadeInOut "];'. Чтобы остановить все анимации в представлении, используйте '[btnTest.layer removeAllAnimations];'. – jowie