Jer*_*e C 2 android android-asynctask
我有一个使用asyncTask和progressdialog执行的方法.执行此方法后,它会更改屏幕上的一些内容 - 微调器和文本视图.在我的方法中,我用新数据更新它们.我知道该方法运行正常并且正在按原样运行,因为当我按下微调器上的箭头时,新数据就在其中.在方法内部调用setText()和notifyDataSetChanged() - 这些似乎不会更新屏幕.将notifyDataSetChanged()添加到我的异步任务的onPostExecute()似乎也没有做任何事情.
出了什么问题?
这是我的代码
myMethod的()
aa=new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item);
for(Object tmpObject:objects){
aa.add(tmpObject.getName());
}
spin=(Spinner)findViewById(R.id.spinner);
spin.setOnItemSelectedListener(this);
aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spin.setAdapter(aa);
aa.notifyDataSetChanged();
txt=(TextView)findViewById(R.id.txt);
txt.setText("Woohoo!");
Run Code Online (Sandbox Code Playgroud)
我的asyncTask
class loginTask extends AsyncTask<Void, Void, Void> {
protected void onPreExecute() {
pd = ProgressDialog.show(login.this, "Logging you in...", "Please wait", true, false);
}
@Override
protected Void doInBackground(Void... unused) {
myMethod();
return null;
}
protected void onPostExecute(Void unused) {
pd.dismiss();
}
}
Run Code Online (Sandbox Code Playgroud)
为什么在progressdialog完成后屏幕没有更新?如果我不使用asyncTask,它会更新.将notifyDataSetChanged()添加到postexecute也不会执行任何操作.
| 归档时间: |
|
| 查看次数: |
2404 次 |
| 最近记录: |