Эффект ряби в пользовательском представлении - PullRequest
0 голосов
/ 28 января 2019

В настоящее время я создаю представление Android, в котором при использовании касания я буду отображать некоторую рябь вокруг координаты касания.

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

Если кто-то сталкивался с такой же проблемой раньше и хотел бы поделиться некоторымиСоветы о том, как это сделать, было бы очень полезно.

1 Ответ

0 голосов
/ 28 января 2019

Я наконец-то нашел решение.Не идеальный, но пока работает.

Вот код, который я сделал.В основном, когда мне это нужно, я изменяю логическое значение на true, поэтому моя функция onDraw знает, что она должна выполнить функцию drawFingerPrint.

Функция drawFingerPrint, на другом конце просто нарисуйте кругэто больше и больше между каждой итерацией, пока не достигнет необходимого диаметра

private fun drawFingerPrint(canvas: Canvas) {
        canvas.drawCircle(pointerX, pointerY, radius, paint)

        if(radius<= 100F){
            radius+=10F
            invalidate()
        }
        else{
            radius = 0F
            drawAroundFinger = false
            invalidate()
        }
    }

Я надеюсь, что кто-то еще иногда найдет это полезным!

Matthieu

...