0

AsyncTask を使用して Web フィードを取得しています。アクティビティが設定されると、これらの要素を activity_main にスプラッシュ画面として表示しています...

 android:id="@+id/progressBar1"
 android:id="@+id/loading_label"

次に、asynctask が実行されたら、これらを GONE にして、他の要素を表示できるようにします。

 android:id="@+id/login_label"
 android:id="@+id/login_textbox"

onPostExecute で可視性を正しく設定するにはどうすればよいですか。これは私が試したものです...

protected void onPostExecute(String retval) {
    progressBar1.setVisibility(View.GONE);
    loading_label.setVisibility(View.GONE);
    login_label.setVisibility(View.VISIBLE);
    login_textbox.setVisibility(View.VISIBLE);
}

しかし、エラーが発生します...「この行に複数のマーカーがあります-progressBar1を
解決
できません-ビューを変数に解決できません」

4

1 に答える 1

3

これは、これらの変数が AsyncTask クラスのスコープ内にないためです。これを行う簡単な方法は、アクティビティに可視性を設定する関数を記述し、onPostExecute からその関数を呼び出すことです。

于 2012-10-17T20:45:11.327 に答える