Kotlin, Android - Как я могу опубликовать один и тот же исполняемый файл внутри работающего? - PullRequest
0 голосов
/ 29 мая 2018

Я хочу опубликовать исполняемый объект в объекте просмотра внутри исполняемого объекта, в настоящее время я застрял здесь.

 var runnable = Runnable {
        if(numLinesToDraw >= amplititudes.size){

        }
        else
        {
            numLinesToDraw = numLinesToDraw ++
            invalidate()
            postDelayed({

            },2000)
        }
    }

    postDelayed(runnable,2000)

Как видите, внутри исполняемого объекта есть метод postDelayed.То, что я хочу сделать, это опубликовать тот же runnable снова и так далее.Что я должен добавить здесь?

       postDelayed({

        },2000)

Ответы [ 2 ]

0 голосов
/ 30 августа 2018

Делай так,

var myRunnable: Runnable = object : Runnable {
    override fun run() {
        progressHandler.postDelayed(this, 100) // here is self calling
    }
}
0 голосов
/ 29 мая 2018

В Kotlin 1.2+ вы можете определить локальный lateinit var для runnable и затем инициализировать его с помощью Runnable, который использует переменную:

lateinit var runnable: Runnable
runnable = Runnable {
    /* ... */
    postDelayed(runnable,2000)
}
...