我正在使用AsyncTask来抓取网络Feed。设置活动后,我在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无法解析
- 视图无法解析为变量“
答案 0 :(得分:3)
这是因为这些变量不在AsyncTask类的范围内。一个简单的方法是在Activity中编写一个设置可见性的函数,然后从onPostExecute调用该函数。