Я не могу использовать findViewById()
от моего Kclass = (Как я могу использовать? `я не могу использовать мой findViewById из AsyncClass
private class BackGroundTask extends AsyncTask<Void, Void, Void>{
@Override
protected Void doInBackground(Void... params) {
try {
//execute - means sending
response =httpClient.execute(request);
HttpEntity entity=response.getEntity();
String str=EntityUtils.toString(entity);
Log.v("Json=", str);
//adding new response to our Response Class
resp.addNewResponse(str);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
Log.e(TAG, "Exception caught: ", e);
}
return null;
}
protected void onPostExecute(Void result) {
super.onPostExecute(result);
httpClient.getConnectionManager().shutdown();
TextView textView = (TextView) findViewById(R.id.textView1);
textView.setText("Done");
}
}
}
пожалуйста напишите точный код. Этот класс находится в другом .java файл не в MainActivity.java
Любое 'View' включая действия в файле' AsyncTask' это плохая идея, так как 'AsyncTask' не имеет ничего общего с взглядов и имеет различные механизмы взаимодействия с «Деятельностью». Используйте «Handler» или «BroadcastReceiver» для такого общения. – nKn
@NKN Обновление пользовательского интерфейса из 'onPostExecute' в порядке. – Simon
@Simon true! Но это можно использовать только после завершения 'doInBackground()', не знаю, какая проблема OP пытается решить ... – nKn