Мне нужно создать класс AsyncTask, который возвращает меня String [], возвращенный String [] будет использоваться для создания списка, поэтому я думал создать ListActivity внутри класса AsyncTask, но метод onPostExecute не работы, он никогда не называется. Мой код:AsyncTask onPostExecute никогда не вызывал
public class AsyncReadPrices extends AsyncTask<Object, String[], String[]>{
static String url = "http://www.mywebsite.com/";
static String ConfPath = new String();
protected String[] doInBackground(Object... params){
String[] menus = new String [(int) params[1]];
try{
BufferedReader reader = new BufferedReader(new InputStreamReader(new URL(url+params[0]).openStream()));
String line = reader.readLine();
for (int k = 0; k < (int)params[1]; k++) {
menus[k] = line;
line = reader.readLine();
}
Log.i("check 1","");
return menus;
}
catch (IOException e){
e.printStackTrace();
}
Log.i("check 2","");
return menus;
}
@Override
protected void onPostExecute(final String[] menu) {
Log.i("It works!","");
new ListActivity(){
@Override
public void setListAdapter(ListAdapter adapter) {
Log.i("string", menu[0]);
setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, menu));
}
};
}
}
Можете ли вы объяснить немного больше? Вызывается вызов 'doInBackground()'? Это крушение. Что еще не происходит/не происходит? – codeMagic
Вызывается класс AsyncTask, doInBackground работает, но метод onPostExecute не вызывается, и я не знаю, почему – ClearCode
Не уверен в 'new ListActivity()', но это неправильный способ создания Activity. Вызывается ли этот журнал, 'Log.i (« Он работает! »,« »);'? – codeMagic