スレッド内からsetTextを実行したい。
これは私のスレッドのコードです:
private class GenerateThread implements Runnable {
public void run(){
// generate the first music
music = generate(prevmusic, prevmusic.length);
prevmusic = music;
// write the midi
writeMidi(music, song);
textOut.setText("Initialising...");
});
}
}
私のメインコードでは、
Thread t = new Thread(new GenerateThread());
t.start();
スレッド内からsetTextを使用することはできません。インターネット上のいくつかの投稿に続いて、私はハンドラーを使用しようとしましたが、それは私にエラーを与えました、私はこのようにRunnableを二重に定義していると思います。
ハンドラーハンドラー(メインの前)
private class GenerateThread implements Runnable {
public void run(){
handler.post(new Runnable() {
// generate the first music
music = generate(prevmusic, prevmusic.length);
prevmusic = music;
// write the midi
writeMidi(music, song);
textOut.setText("Initialising...");
});
}
}
スレッド内からテキストを設定するにはどうすればよいですか?ありがとう!