android - Broadcast received before UI is rendered -
मेरे आवेदन में, मुझे एक फिर मैं एक वेब सेवा कॉल करता हूं, जो मुझे प्रतिक्रिया के लिए टेक्स्टव्यू & amp; छवियों की एक यूआरएल स्ट्रिंग (वास्तविक चित्र नहीं)। मैं इस संहिता को में सीरिज के अंदर, मैं सभी छवियों को ड्राइव में डाउनलोड किए जाने के बाद, मैं अपने खंड में इसलिए मुझे ImageView पर एक धन्यवाद मैं इस समस्या का हल कैसे कर सकता हूं। ListView रहा है जिसमें
TextView & amp; एक या अधिक
ImageViews ।
AsyncTask में कॉल कर रहा हूं।
postExecute () , मैं TextView सेट कर रहा हूं और फिर छवि सामग्री को लाने के लिए एक
सेवा कॉल करता हूं।
ExecutorService छवियों को एक-एक करके लाने के लिए for-loop के अंदर।
खंड को सूचित करने के लिए
broadcast भेजता हूं < / कोड> है कि सभी छवियों को डाउनलोड किया जाता है।
onReiveive () , मैं
ImageViews में चित्र सेट करता हूं। पी> मुद्दा कभी-कभी होता है, पर रीसिव () को कॉल किया जाता है, ImageView प्रस्तुत करने से पहले भी बना दिया जाता है।
NullPointerException मिलता है।
बूलीयन uiReady = fal से; बुलियन छवियाँरेडी = झूठे; निजी ब्रॉडकास्ट रिसेवर mMessageReceiver = नया ब्रॉडकास्ट रिसीवर () {@ ओवरराइड पब्लिक रिकॉइड ऑन रीसेव (प्रसंग संदर्भ, आशय का इरादा) {if (uiReady) {// सेट छवि} अन्य {imagesReady = true; }}} @WindowFocusChanged (बूलियन हैफोकस) पर सार्वजनिक शून्य को ओवरराइड करें {सुपर। विंडवॉक्स्स परिवर्तित (हैफ़ोकस); यदि (imagesReady) {// सेट छवियाँ} अन्य {uiReady = true; }}
Comments
Post a Comment