我有这个代码用于管理我的数据库中的某些国家;
class checkCountryAsync extends AsyncTask<String, String, String> {
@Override
protected void onPreExecute() {
super.onPreExecute();
setContentView(R.layout.main);
}
@Override
protected String doInBackground(String... aurl) {
MDPIActivity.this.runOnUiThread(new Runnable() {
public void run() {
CountryTable country = new CountryTable() ;
country.EnterCountry();
}
});
return null;
}
}
有了这个,我想设置内容View然后在后台设置onBackground方法,但我还是要等到内容视图,直到onBackground方法没有完成。
谢谢。
答案 0 :(得分:2)
我认为没有任何理由将setContentView()
置于onPreExecute
方法中,它应采用onCreate
方法,以避免任何类型的NullPointerException
将尝试查找您的观点,对于AsyncTask
,您应该使用在onPostExecute()
doInBackground()
答案 1 :(得分:0)
请尝试这个,认为它的工作.class checkCountryAsync扩展AsyncTask {
@Override
protected void onPreExecute() {
super.onPreExecute();
setContentView(R.layout.main);
}
@Override
protected String doInBackground(String... aurl) {
CountryTable country = new CountryTable() ;
country.EnterCountry();
return null;
}
} `
答案 2 :(得分:0)
您应该尝试使用publishProgress()和onProgressUpdate()方法。