मैं एक AsyncTask जिसमें मैं onPreExecute में एक ProgressDialog दिखाने के है, और onPostExecute में फिर से छुपाने के लिए, की तरहरद्द AsyncTask जब उपयोगकर्ता वापस प्रेस बटन
final class UploadTask extends AsyncTask {
ProgressDialog dialog = new ProgressDialog(...);
protected onPreExecute() {
dialog.show();
}
protected onPostExecute() {
dialog.hide();
}
};
संवाद रद्द करने योग्य है और वास्तव में कुछ हो जाता है दूर जब मैं AsyncTask के निष्पादन के दौरान रद्द करें बटन दबाएं।
जब ऐसा होता है, तो मैं AsyncTask को रद्द करने के लिए कुछ कोड भी चलाऊंगा (अभी भी, यह भी सोचा कि वह प्रोग्रेसडिअलॉग चला जाता है, AsyncTask चल रहा है और अंत में पूरा हो जाता है)। मैं ProgressDialog से अपने ही वर्ग पाने की कोशिश की और फिर
setOnDismissListener(new OnDismissListener() {
@Override public void onDismiss(DialogInterface d) {
/* do something */
}
};
(या कुछ और एक OnCancelListener के साथ इसी तरह) करते हैं, लेकिन यह केवल कहा जाता हो जाता है कभी नहीं।
कोई विचार? जब प्रोग्रेसडिअलॉग दिखा रहा है, तो मुझे उपयोगकर्ता को चल रहे AsyncTask को रद्द करने के लिए कुछ तंत्र की आवश्यकता है।
एक उदाहरण : //www.quicktips.in/correct-way-to-cancel-an-asynctask-in-android/ –