Mam AsyncTaska do połączenia HTTP i pobrania danych, w metodzie onPostExecute zmieniam dane kilku TextView. Wiem, że mogę wykonywać tylko jedno zadanie AsyncTask w metodzie OnCreate w mainActivity. Chciałbym, żeby ten AsyncTask wywoływał się po naciśnięciu przycisku i zmieniał mi po prostu te tekstView, które mam w mainActivity. Chyba trochę poplątałem. Wrzucam kod onCreate w mainActivity tego jak próbowałem to zrobić:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
miastko = "London,UK";
miasto = (TextView) findViewById(R.id.miasto);
opisWarunkow = (TextView) findViewById(R.id.opisWarunkow);
temperatura = (TextView) findViewById(R.id.temperatura);
predkoscWiatru = (TextView) findViewById(R.id.wilgotnosc);
windDeg = (TextView) findViewById(R.id.cisnienie);
cisnienie = (TextView) findViewById(R.id.predkoscWiatru);
wilgotnosc = (TextView) findViewById(R.id.windDeg);
ikonka = (ImageView) findViewById(R.id.ikonka);
JSONPogodaTask task = new JSONPogodaTask();
task.execute(new String[]{miastko});
zmianaMiastaPrzycisk.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick (View v){
EditText zmianaMiasta = (EditText) findViewById(R.id.zmianaMiasta);
miastko = zmianaMiasta.getText().toString();
JSONPogodaTask task1 = new JSONPogodaTask();
task1.execute(new String[]{miastko});
}
});
}