アクティビティのスレッド処理を待つ方法を教えてください。私のスレッドは、リモートサーバーから.png画像をダウンロードします。私は写真をダウンロードするのを待っています、そして、活動は処理の中で続けられます。スレッドのアンドロイド待機アクティビティ
活性
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.initializer);
ImageView mainImageView = (ImageView) findViewById(R.id.imageView);
ProgressBar progressBar = (ProgressBar) findViewById(R.id.progressBar);
InitProgress initProgress = new InitProgress(progressBar); // initialization progress bar
MyMap map = new MyMap(); // there is written the picture as Drawable from thread
MapDownloader mapDownloader = new MapDownloader(map,initProgress); // thread that download picture from server
// wait ???
mainImageView.setBackgroundDrawable(buildingMap.getDrawableMap()); // using downloaded picture
}
このコードは、画像を後でダウンロードされ、ダウンロードされた画像なしで継続します。セマフォーはこの目的に適していますか?
リモートサーバーからダウンロードした画像にAsyncTaskを使用して他のスレッドを使用する必要はありませんか? – misco
AsyncTaskは、別のスレッドで実行されます。 –
いいえ、AsyncTaskをアクティビティから継承してクラスを呼び出すと、私のアクティビティはonPostExecuteを待機しますか? – misco