android - Show ProgessDialog on Button Click -


मैं प्रगति डीआईएलओघ में OnClick () विधि को मेरी गतिविधि । मैं निम्नलिखित की तरह कर रहा हूं, लेकिन कोई त्रुटि है क्या ठीक किया जा सकता है


<कोड> 04-24 अक्टूबर
: 52: 46.241: ई / AndroidRuntime (21,846): गंभीर अपवाद: मुख्य 4-24 अक्टूबर: 52: 46.241: ई / AndroidRuntime (21,846): android.view.WindowManager $ BadTokenException: -: 52: 46.241: खिड़की जोड़ने में असमर्थ टोकन रिक्त नहीं एक आवेदन 4-24 अक्टूबर के लिए है ई / AndroidRuntime (21,846): android.view.ViewRoot.setView पर (ViewRoot.java lesson161) 04-24 10: 52: 46.241: ई / एंड्रॉइड रेंटाइम (21846): एंड्रॉइड। पर। विन्डो मैनेजर आईमप्ल.एडव्यू (विंडोमैनैजरमॉड। जेवाइआर 77) 04-24 10: 52: 46.241: ई / एंड्रॉइडरेंटाइम (21846): एंड्रॉइड। पर। विन्डो मैनेजर आईएमएलपी। एडव्यू (विंडो मैनेजर इंपल। जावा। 9 4) 04-24 10: 52: 46.241: ई / एंड्रॉइड रेंटाइम (21846): एंड्रॉइड.एप.डिलाओग। शो (डायलॉग। जावा डे6565) 04-24 10: 52: 46.241: ई / एंड्रॉइड रेंटाइम (21846): कॉम पर। Wamiq.test_layout.ComposeMessage $ 4.onClick (ComposeMessage.javathing37) 04-24 10: 52: 46.241: ई / एंड्रॉइडरेंटाइम (21846): android.view.View.performClick (View.java:2532) पर   
  bSend.setOnClickListener (नई View.OnClickListener () {@Override सार्वजनिक शून्य onCl ick (देखें v) {if (etTo.getText () toString () compareTo ( "") == 0 Toast.makeText (getApplicationContext (),।।) "कोई इस निर्दिष्ट", Toast.LENGTH_SHORT) .show (); else {प्रगतिशील विकास प्रगति = नया प्रगतिदर्शिका (getApplicationContext ()); Progress.setTitle ("प्रेषित मेल"); progress.setMessage ("कृपया प्रतीक्षा करें ..."); progress.show (); Int flag = sendMail (etTo.gettext)। ToString (), etCc.gettext () .toString (), etBcc.getText ()। ToString (), एटसब्जिक .gettext ()। ToString (), etMessage.getText () .toString (), etSign.getText ()। toString (), attachlst); // संवाद को खारिज करने के लिए progress.dississ (); }}});    

बस progress.dismiss () को हटाएं; में आपका दूसरा भाग, क्योंकि जैसा कि आप शो () अपने डायलॉग और उसके बाद सीधे आप इसे खारिज कर रहे हैं, इसलिए जब आपका संवाद एक ही समय में दिखाया जाएगा तो इसे खारिज कर दिया जाएगा और आपको कोई विचार नहीं मिलेगा इसके बारे में

तो मैं तुम्हें दिखाने के लिए और नीचे के रूप में अपने संवाद को दूर करने के लिए AsyncTask उपयोग करने के लिए सुझाव है:

  वर्ग progressdialog फैली AsyncTask & LT; स्ट्रिंग, पूर्णांक , स्ट्रिंग & gt; {@Override Protected void onPreExecute () {// TODO स्वतः-निर्मित विधि स्टब super.onPreExecute (); प्रगति डीआलाओग प्रगति = नया प्रगति डीआईओएलओॉग (YourActivityname.this); Progress.setTitle ("प्रेषित मेल"); progress.setMessage ("कृपया प्रतीक्षा करें ..."); progress.show (); } @Override स्ट्रिंग doInBackground (String ... पैरामीटर) {int झंडा = sendmail (etTo.getText () की रक्षा की। ToString (), etCc.getText () .toString (), etBcc.getText ()। ToString (), etSubject .gettext ()। ToString (), etMessage.getText () .toString (), etSign.getText ()। ToString (), attachlst); वापसी नल; } @ ओवरराइड संरक्षित शून्य पर पोस्टएक्सएक्टेक (स्ट्रिंग परिणाम) {/ TODO ऑटो-जनरेट किया गया विधि स्टब super.onPostExecute (परिणाम); progress.dismiss (); }}    

Comments

Popular posts from this blog

c# - passing input text from view to contoller with FacebookContext using Facebook app -

Calling a C++ function from C# by passing a string with variable size to it -

ios - Does Core Data autoupdate a many to many relationship on saving -