Pull to refresh

Comments 16

Прикольно реализовано, удобно аттачить.
FloatProperty — хочет API 14, можно как-нибудь опустить до 11?
Можно с помощью NineOldAndroids даже до 1 опустить, если больше другое API не используется.
А в чем резон поддерживать 11? Девайсов на api [11, 14) почти нет. minSdk 14 — оптимальный вариант
Но между 14 и 15 API нет новых фишек (только вроде что-то с видео), поэтому проще с 14.
Не пойму почему поддерживать 6 версий проще чем 5 версий.
Там же кроме новых фич еще и баги фиксят.
Ой не травите мне душу, до сих пор под 10 разрабатываем…
я в этом плане пляшу от появления фрагментов, а они с 11 версии. Между 11 и 14 тоже не особо критичные изменения
Не пробовал еще Android L, но там такой эффект по-умолчанию во всех View?
Если да, то как ваш эффект будет работать поверх уже имеющегося в Android L?
Может стоит в createRipple() сразу добавить проверку на Android L и не добавлять ваш эффект?
Эффект на Android L реализован с помощью (примерно) такого же Drawable.
Соответственно, проверка должна быть раньше — при установке этого Drawable.
а можно еще поподробнее рассказать про методы createRipple и onDraw — не до конца понятно как Drawable рисуется поверх view
Я так понял, Drawable не рисуется поверх View, а классическим образом устанавливается в качестве background.
Если хочется рисовать Drawable именно поверх View, то вам понадобится ViewOverlay, который, увы, с API 18.
ага, мы в личке уже выяснили.
Это не универсальное решение так как найти вьюху (а тем более viewgroup) у которой виден бэкграунд сложно. Многое нарисованно сверху.
Там надо ViewOverlay (спасибо почитал про него, не знал раньше), или делать обертку ViewGroup в которой уже сначала рисовать ту вьюху к которой приаттачен эффект, а потом сверху этот класс RippleDrawable.
Ну и соответсвенно аттачиться будет это дело примерно так же:
RippleDrawableView.createRipple(view, getColor(R.color.material_blue_600));

надеюсь автор добьет до конца хорошее начинание )
ps: хотя подумал — как подменить в иерархии старый view на нашу обертку? возможно не оч рабочее решение
а если просто устанавливать этот drawable не в background, а в foreground frame layout?
не универсально, получается только для framelayout?
изначально только для него, да. но я нашел для себя неплохую библиотеку
github.com/cesards/ForegroundViews
она очень простая и содержит только классы FImageView, FLinearLayout, FRelativeLayout, FTextView. соответственно в каждом из них дописана возможность ставить foreground аналогично тому, как это делается во FrameLayout
Sign up to leave a comment.

Articles