मैं अपने ऐप में प्रगति संवाद दिखाने के लिए showDialog()
और dismissDialog()
का उपयोग कर रहा हूं। अभिविन्यास बदलते समय राज्य को बचाने के लिए संवाद का निर्माण करने और show()
पर कॉल करने से इसे स्थानांतरित किया गया।एंड्रॉइड - dismissDDialog संवाद को खारिज नहीं करता
लेकिन जब मैं चित्र-> परिदृश्य-> चित्र से अभिविन्यास बदलता हूं, dismissDialog()
अब संवाद को खारिज नहीं करता है। संवाद हर समय वहां रहता है और गायब होने के लिए मुझे बैक बटन दबाए जाने की आवश्यकता होती है।
किसी भी कारण से यह इस तरह से व्यवहार करेगा?
संपादित
इस मुद्दे पर काबू पाने के लिए, मैं एक onDestroy()
में removeDialog()
ताकि संवाद नहीं बनाई गई है/दो बार और अभिविन्यास परिवर्तन से पहले प्रदर्शित, संवाद हटा दिया जाता है जोड़ने की कोशिश की। लॉग बयान जोड़ने और देखो क्या होता
05-21 12:35:14.064: DEBUG/MyClass(193): *************callingShowDialog
05-21 12:35:14.064: DEBUG/MyClass(193): *************onCreareDialog
05-21 12:35:15.385: DEBUG/MyClass(193): *************onSaveInstanceState
05-21 12:35:15.415: DEBUG/MyClass(193): *************onDestroy
05-21 12:35:15.585: DEBUG/MyClass(193): *************callingShowDialog
05-21 12:35:15.585: DEBUG/MyClass(193): *************onCreareDialog
05-21 12:35:15.715: DEBUG/MyClass(193): *************onCreareDialog
05-21 12:35:17.214: DEBUG/MyClass(193): *************onSaveInstanceState
05-21 12:35:17.214: DEBUG/MyClass(193): *************onDestroy
05-21 12:35:17.275: ERROR/WindowManager(193): android.view.WindowLeaked: Activity com.android.MyClass has leaked window [email protected] that was originally added here
05-21 12:35:17.395: DEBUG/MyClass(193): *************callingShowDialog
05-21 12:35:17.395: DEBUG/MyClass(193): *************onCreareDialog
05-21 12:35:17.475: DEBUG/MyClass(193): *************onCreareDialog
तो हम यहाँ देख की कोशिश की, शुरू में जब गतिविधि प्रदर्शित किया जाता है, onCreateDialog एक बार और अभिविन्यास बदलने पर कहा जाता है, onSaveInstanceState और OnDestroy कहा जाता है।
लेकिन उसके बाद, क्रिएटडिअलॉग को दो बार बुलाया जाता है (एक बार कॉल करने के लिए कॉल करके जिसे मैं करता हूं, लेकिन दूसरी बार क्यों?) और हर बार जब मैं अभिविन्यास बदलता हूं तो ऐसा होता है।
कोई विचार क्यों ऐसा होता है?
धन्यवाद फिर से
के आधार पर किसी कृपया मुझे इस मुद्दे के साथ मदद कर सकते हैं? मैंने इस मुद्दे के बारे में कई पोस्ट और ब्लॉग देखे हैं लेकिन किसी के पास ऐसा समाधान नहीं है जो काम करता है। – lostInTransit