एंड्रॉइड में एक गतिविधि शुरू करने से पहले प्रगति संवाद कैसे प्रदर्शित करते हैं (यानी, जबकि गतिविधि कुछ डेटा लोड हो रही है)?एंड्रॉइड में एक गतिविधि शुरू करने से पहले प्रगति संवाद कैसे प्रदर्शित करें?
उत्तर
आपको AsyncTask में डेटा लोड करना चाहिए और अपना इंटरफ़ेस अपडेट करना चाहिए जब डेटा लोड हो जाता है।
आप अपने AsyncTask की onPostExecute()
विधि में भी एक नई गतिविधि शुरू कर सकते हैं।
public class MyTask extends AsyncTask<Void, Void, Void> {
public MyTask(ProgressDialog progress) {
this.progress = progress;
}
public void onPreExecute() {
progress.show();
}
public void doInBackground(Void... unused) {
... do your loading here ...
}
public void onPostExecute(Void unused) {
progress.dismiss();
}
}
फिर अपनी गतिविधि में आप क्या करेंगे:
अधिक विशेष रूप से, आप एक नया वर्ग है कि AsyncTask फैली आवश्यकता होगी
ProgressDialog progress = new ProgressDialog(this);
progress.setMessage("Loading...");
new MyTask(progress).execute();
बहुत बहुत धन्यवाद :) आपका जवाब काम किया। – Neha
हे उत्तर के लिए धन्यवाद, मैं बिल्कुल यह कर रहा हूं, लेकिन किसी कारण से प्रगति डायलॉग पॉप अप करता है जब फोन लैंडस्केप ओरिएंटेशन में होता है लेकिन जब यह पोर्ट्रेट अभिविन्यास में नहीं होता है। क्या आपके पास इस पर कोई विचार है? मैंने पहली कक्षा से संवाद शुरू करने का प्रयास किया है (वह जो मेरा टास्क कहता है) लेकिन फिर भी वही समस्या है। कभी-कभी, संवाद पोर्ट्रेट मोड में काम करता है लेकिन यह फोकस से बाहर दिखता है और यह 10 प्रयासों में केवल एक बार होता है। – Art
जब आप एंड्रॉइड पर एक लंबी चल रही प्रक्रिया शुरू करते हैं, तो यह हमेशा किसी अन्य धागे पर ऐसा करने की सलाह देता है। फिर आप एक प्रगति संवाद प्रदर्शित करने के लिए यूआई थ्रेड का उपयोग कर सकते हैं। आप एक ही (UI) थ्रेड में एक प्रगति संवाद प्रदर्शित नहीं कर सकते जिसमें प्रक्रिया चल रही है।
अपनी प्रक्रिया
pd = ProgressDialog.show(this, "Synchronizing data", "Please wait...");
Thread t = new Thread(this);
t.start();
शुरू करने के लिए यह आपकी गतिविधि के लिए Runnable को लागू करना चाहिए के रूप में
public class SyncDataActivity extends Activity implements Runnable
और अंत में एक विधि इस प्रकार लंबी चलने वाली प्रक्रिया
@Override
public void run() {
//your code here
}
प्रदर्शन करने के लिए निम्न कार्य करें
यदि आप धागे का उपयोग करते हैं तो आपको यूआई थ्रेड पर पोस्ट-टास्क कोड निष्पादित करने जैसी विभिन्न चीजों का प्रबंधन करना होगा। –
मैथ्यू ... क्या आप AsyncTask में सत्य को सेट कर सकते हैं? – JAL
हाय, मैंने कोशिश की जैसे आपने लोगों को बताया, लेकिन फिर भी यह काम नहीं कर रहा है। मैं नीचे अपना कोड पोस्ट कर रहा हूं। क्या कोई कृपया बता सकता है कि मैं क्या गलत कर रहा हूं? – Neha
- 1. नई गतिविधि शुरू करते समय प्रगति संवाद
- 2. एंड्रॉइड: प्रगति संवाद स्पिनर
- 3. एंड्रॉइड प्रगति संवाद
- 4. एंड्रॉइड पोजिशनिंग प्रगति संवाद या कस्टम प्रगति संवाद
- 5. प्रगति संवाद
- 6. एंड्रॉइड में प्रगति संवाद समस्या
- 7. एक गतिविधि से एंड्रॉइड सेवा कैसे शुरू करें और दूसरी गतिविधि में सेवा बंद करें?
- 8. एंड्रॉइड एक संवाद से एक और संवाद प्रदर्शित करता है
- 9. इसे प्रदर्शित करने से पहले पृष्ठभूमि में एक गतिविधि लोड करें
- 10. एंड्रॉइड - मूल स्क्रीन पर एक संवाद कैसे प्रदर्शित करें?
- 11. एंड्रॉइड: प्रगति बदलना संवाद पाठ
- 12. एकता अनुप्रयोग से एंड्रॉइड गतिविधि कैसे शुरू करें?
- 13. संवाद के अंदर एंड्रॉइड गतिविधि
- 14. गतिविधि से शुरू करें FragmentActivity
- 15. एंड्रॉइड पर वर्तमान में दृश्यमान गतिविधि पर मैं एक संवाद कैसे प्रदर्शित कर सकता हूं?
- 16. फिर से शुरू करने गतिविधि त्रुटि
- 17. एंड्रॉइड पर स्टेटस बार में अनिश्चित प्रगति पट्टी प्रदर्शित करें
- 18. Android AppWidget से गतिविधि कैसे शुरू करें?
- 19. किसी गतिविधि के बिना एंड्रॉइड में सेवा कैसे शुरू करें
- 20. किसी सेवा से गतिविधि कैसे शुरू करें?
- 21. एंड्रॉइड की गतिविधि में परीक्षण संवाद UnitTestCase
- 22. किसी सेवा से संवाद प्रदर्शित करने के लिए
- 23. प्रगति संवाद
- 24. एंड्रॉइड में गतिविधि खत्म होने से पहले थ्रेड मारा जाएगा?
- 25. किसी सेवा से ग्राहक/गतिविधि में संवाद करने के लिए लंबित इंंटेंट का उपयोग कैसे करें?
- 26. Django - कार्य प्रगति प्रदर्शित करें
- 27. थ्रेड से गतिविधि तक प्रगति मूल्य कैसे पारित करें?
- 28. एंड्रॉइड चेक उपयोगकर्ता पहले से लॉग इन है, और फिर लॉगिन गतिविधि शुरू करें
- 29. शॉर्टकट एक गतिविधि शुरू करने के लिए
- 30. एंड्रॉइड: अनिश्चित क्षैतिज प्रगति (संवाद) बार
आप अपने प्रश्न से पहले रिक्त स्थान को निकालना चाहिए .. यह कोड ब्लॉक के रूप में उठाया जा रहा है और आपके प्रश्न को पढ़ने के लिए कठिन बना रहा है। – DTing