में "findViewById" तक नहीं पहुंच सकता है मैं एक php फ़ाइल से डेटा डाउनलोड करने के लिए AsyncTask क्लास का उपयोग कर रहा हूं। डाउनलोड करने के बाद, मैं इस डेटा को अलग-अलग टेक्स्ट व्यू में रखना चाहता हूं, लेकिन मैं findViewById विधि का उपयोग नहीं कर सकता।AsyncTask
समस्या यह है कि मैं इसे अलग-अलग वर्गों द्वारा कर रहा हूं, और यह सब एक टुकड़े के भीतर कर रहा है।
यह मेरा कोड है:
public class RecuperarComentarisFoto extends AsyncTask<String, String, String>{
private Context mContext;
[...]
public RecuperarComentarisFoto(Context context){
this.mContext=context;
}
@Override
protected void onPreExecute() {
[...]
}
@Override
protected String doInBackground(String... arg0) {
params.add(new BasicNameValuePair("pid", "1"));
JSONObject json = jsonParser.makeHttpRequest(url_get_comentaris, "GET", params);
JSONArray productObj;
//HERE I RETRIEVE DATA FROM JSON. ITS WORKING OK.
return null;
}
और जहां मैं इस समस्या है: मैं इस कोशिश की है
@Override
protected void onPostExecute(String result) {
super.onPostExecute(result);
this.pDialog.dismiss();
TextView comentariEditText = (TextView) findViewById(R.id.commentsMostrar);
}
:
TextView comentariEditText = (TextView) mContext.findViewById(R.id.commentsMostrar);
लेकिन भी काम नहीं कर रहा ।
ध्यान दें कि मैं इस AsyncTask को एक टुकड़े से बुला रहा हूं।
public class MyFragmentA extends Fragment {
Context cont;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View myFragmentView = inflater.inflate(R.layout.fragment_a, container, false);
cont=getActivity();
new RecuperarComentarisFoto(cont).execute();
return myFragmentView;
}
}
मुझे क्या करना चाहिए: जैसा कि आप देख सकते हैं, मैं AsyncTask करने के लिए) संदर्भ getActivity (द्वारा प्राप्त पारित करने के लिए था?
धन्यवाद।
अपना लॉगकाट – Ahmad