J'ai une fonction displayDirectoryContents2(file : File) qui scanne tous les fichiers et vérifie les fichiers et répertoires. Ce que je veux, c'est afficher le chemin du fichier actuel dans une vue de texte dans le fil de l'interface utilisateur.
lateinit var textView: TextView
GlobalScope.launch(Dispatchers.IO) {
displayDirectoryContents2(file)
}
Code de la fonction
private fun displayDirectoryContents2(dir: File?){
try {
val files = dir?.listFiles()!!
files.forEach {
if (it.isDirectory) {
displayDirectoryContents2(it)
} else {
if (it.isFile) {
textView.text = it.name // to Update the file name in UI thread
}
}
} catch (e: IOException) {
e.printStackTrace()
}
}
Je suis novice en matière de coroutines Kotlin. En fait, je veux exécuter la fonction displayDirectoryContents2(file : File) en arrière-plan et mettre à jour le nom du fichier que la fonction est en train de lire dans le thread de l'interface utilisateur, tout comme AsyncTask.