Мой первый Android-проект, мой первый Kotlin Project (примеры Java помогли бы мне)
Проблема в следующем: у меня есть TextView.Я могу изменить текст с кодом.Но проблема в том, что, похоже, моя активность должна завершиться, чтобы могли произойти изменения в графическом интерфейсе.
myTextView.setText("x = $x") //this works once
do{
myTextView.setText("x = $x") //this doesnt work
println("x = $x") //this works on standart io
x++
}while(true)
do{
myTextView.setText("x = $x") //this doesnt work until x reaches its limit
x++
}while(x<100)
Что я пробовал до сих пор: Запустить другой поток с HandlerThread и попробовать его там (неработать, потому что «Только исходный поток, создавший иерархию представлений, может касаться его представлений».)
Сначала мой код был в onCreate, я понял, что перемещение его в onResume было лучшей идеей, так что, по крайней мере, он устанавливаеттекст каждый раз, когда я переключаюсь на домашний экран и возвращаюсь.Но это все еще не решение.
Единственный обходной путь, который я имею в виду, - это использовать Handler.post () в том же потоке для создания цикла, но я не уверен, что это будет работать, также это кажется неправильным способомчтобы сделать это, я бы предпочел цикл while таким же образом, как и с println () в стандарте.Может быть, есть какой-то метод обновления графического интерфейса, который мне нужно вызывать внутри цикла, но я не знаю, существует ли такая вещь.