पर रंग बैंडिंग केवल एंड्रॉइड 4.0 या 4.0.3 चलाने वाले अनुकरणकर्ताओं पर, मुझे भयानक रंग बैंडिंग दिखाई दे रही है जिसे मैं छुटकारा पाने के लिए प्रतीत नहीं कर सकता। मैंने परीक्षण किए गए हर दूसरे एंड्रॉइड संस्करण पर, ग्रेडियेंट चिकनी दिखते हैं।एंड्रॉइड 4.0+
मेरे पास एक SurfaceView है जिसे RGBX_8888 के रूप में कॉन्फ़िगर किया गया है, और बैंडिंग रेंडर कैनवास में मौजूद नहीं है। यदि मैं प्रतिपादन के अंत में शोर पैटर्न को ओवरले करके मैन्युअल रूप से छवि को डुबोकर रखता हूं तो मैं ग्रेडियेंट को फिर से चिकनी बना सकता हूं, हालांकि स्पष्ट रूप से प्रदर्शन की लागत पर जो मैं बचाना चाहता हूं।
तो बैंडिंग बाद में पेश की जा रही है। मैं केवल यह मान सकता हूं कि, 4.0+ पर, मेरी सतह दृश्य को कम बिंदु-गहराई तक कम किया जा रहा है, इसे किसी बिंदु पर खींचा जा रहा है और प्रदर्शित किया जा रहा है, और मैं स्क्रीन कैप्चर से देख सकता हूं कि ग्रेडियेंट एक समय में 8 मानों को बढ़ा रहे हैं प्रत्येक चैनल, 555 (565 नहीं) को मापने का सुझाव देता है।
मैंने अपनी गतिविधि ऑनक्रेट फ़ंक्शन पर निम्नलिखित जोड़ा, लेकिन इससे कोई फर्क नहीं पड़ता।
getWindow().setFormat(PixelFormat.RGBA_8888);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DITHER);
मैंने उपरोक्त को अटैचमेंट टॉविंडो() पर डालने का भी प्रयास किया, लेकिन अभी भी कोई बदलाव नहीं हुआ।
(मुझे विश्वास है कि RGBA_8888 डिफ़ॉल्ट विंडो प्रारूप 2.2 और इसके बाद के संस्करण के लिए वैसे भी है, इसलिए यह थोड़ा आश्चर्य है कि स्पष्ट रूप से उस प्रारूप की स्थापना 4.0+ पर कोई प्रभाव नहीं है।)
कौन सा सवाल छोड़ देता है, यदि स्रोत है 8888 और गंतव्य 8888 है, मात्रा/बैंडिंग का परिचय क्या है और यह केवल 4.0+ पर क्यों दिखाई देता है?
बहुत परेशान। मुझे आश्चर्य है कि कोई भी कुछ प्रकाश डाल सकता है?
संभावित डुप्लिकेट [आईसीएस पर बिटमैप्स गलत पिक्सेल प्रारूप के साथ लोड किए गए हैं] (http://stackoverflow.com/questions/9097887/bitmaps-on-ics-are-loaded-with-wrong-pixel-format) –
धन्यवाद उस लिंक के लिए ... वास्तव में एक ही समस्या की तरह दिखता है। कुछ उत्तरों से पता चलता है कि यह केवल एक एमुलेटर समस्या हो सकती है और, हालांकि कोई निश्चित उत्तर नहीं है, मैं इसके साथ अभी जा रहा हूं। – threeshinyapples
मुझे एक ही समस्या है। मैं v2.2 + और v2.3 + पर समस्या को हटाने में सक्षम था, लेकिन v4.0 + नहीं, मुझे यह जानना अच्छा लगेगा कि कोई इसका समाधान जानता है या नहीं? – Sent1nel