onPostExecute
私はofによって作成された結果を に渡すことに取り組んできましAsyncTask
たFragment
。私は でそれを行う方法を知っていますがActivity
、どうすれば で((MyActivity)context).someMethod();
これを行うことができFragment
ますか?
私はそうします((MyFragment)contextOfAsyncTask).methodInFragment()
が、「コンテキストからMyFragmentにキャストできません」というエラーが表示されます。
これがAsyncTaskの私のコードです
class AsyncMethod extends AsyncTask{
ArrayList<MyObject> myVar= new ArrayList<MyObject>();
String result;
ListView lv;
Context contextOfAsyncTask;
public AsyncMethod(Context xc, ListView xl){
contextOfAsyncTask= xc;
lv = xl;
}
@Override
protected void onPreExecute() {
}
@Override
protected Void doInBackground(Void...param) {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(http://www.myurl.com/something.php);
HttpResponse httpResponse = httpclient.execute(httppost);
HttpEntity httpEntity = httpResponse.getEntity();
result = EntityUtils.toString(httpEntity);
return null; //EVERYTHING IS WORKING FINE HERE, AND I CAN GET THE VALUE
}
@Override
protected void onPostExecute(Void res) {
//it does not work here
((MyFragment)contextOfAsyncTask).methodInFragment(result);
}