Эффект ряби для предварительного леденца
Я занимаюсь разработкой приложения, в которое я хочу добавить эффект ряби в моем обзоре переработчика. Так может кто-нибудь сказать мне код, чтобы сделать это, и есть ли способ, которым я могу достичь этого в pre lollipop тоже. Если нет, пожалуйста, предложите мне код с моим приложением может показать эффект ряби в леденце и верхних версиях и любой простой эффект для предварительного леденца, чтобы показать, что элемент был нажат или нажал. Спасибо.
2 ответа
Вы можете использовать эту библиотеку, добавив эффект ряби в версию, предшествующую Lolipop.
например
добавить кнопку в файл макета
<com.rey.material.widget.Button
style="@style/ButtonRippleStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="BUTTON"
app:rd_enable="true"/>
добавить собственный стиль в свой файл стиля
<style name="ButtonRippleStyle" parent="Material.Drawable.Ripple.Wave.Light">
<item name="android:background">@null</item>
<item name="rd_rippleColor">#20F15A2B</item>
</style>
Почему на предварительном леденце нет ряби?
Многое из того, что позволяет RippleDrawable работать без сбоев, - это новый Android 5.0 RenderThread. Чтобы оптимизировать производительность на предыдущих версиях Android, мы пока оставили RippleDrawable.
http://android-developers.blogspot.com.uy/2014/10/appcompat-v21-material-design-for-pre.html
Если вы хотите предварительно леденец на палочке, вы должны использовать библиотеку, как:
https://github.com/balysv/material-ripple
https://github.com/traex/RippleEffect
Другие библиотеки: https://android-arsenal.com/tag/167
Для>= 21 API вам нужно только установить в макете:
android:background="?android:attr/selectableItemBackground"