ProgressBar に問題があります。以前にプログレスバーを使用したことがありますが、この問題は一度もありませんでした。
クリックすると asynctask を実行するボタンがありますが、完了するまでに時間がかかる場合があります。そこで、ボタンがクリックされたときに表示される ProgressBar を設定しました。コードは次のとおりです。
Button btnFollowing = (Button) findViewById(R.id.btnFollowing);
final ProgressBar pbFollowing = (ProgressBar) findViewById(R.id.progressBarFollowing);
btnFollowing.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
pbFollowing.setVisibility(View.VISIBLE);
ArrayList<String> friends = new ArrayList<String>();
try {
GetFriends gf = new GetFriends(MainActivity.this);
friends = gf.execute("value").get();
} catch (InterruptedException e) {
Log.e("Exception MainActivity gettingfriends", e.toString());
} catch (ExecutionException e) {
Log.e("Exception MainActivity gettingfriends", e.toString());
}
setStringArrayPref(MainActivity.this, "friends", friends);
pbFollowing.setVisibility(View.INVISIBLE);
}
});
問題は、AsyncTask が作成される前に setVisible 行があったとしても、AsyncTask が終了するまで ProgressBar が画面に表示されないことです。
なぜこれが起こっているのかについてのアイデアはありますか?
アドバイスありがとう!