Я пытаюсь выполнить функцию внутри Thread, но эта функция не выполняется:
Thread { run { Thread.sleep(1000) createView(view, inflater) } }.start()
Поэтому я пытаюсь использовать другой код, например:
thread(start = true) { Thread.sleep(1000) createView(view, inflater) }
и снова createView не выполняется
Наконец я пытаюсь:
Thread { Thread.sleep(5000) fun run() { Runnable { createView(view, inflater) } } }.start()
, и я получил ошибку:
"Только исходный поток, создавший иерархию представлений, может касаться его представлений. "
Только основной поток может изменять представления.Поэтому вам нужно сделать что-то вроде этого:
Thread { Thread.sleep(5000) this@SomeActivity.runOnUiThread(Runnable { createView(view, inflater) }) }.start()