我的應用使用全屏glSurface疊加,8888格式。對於大多數設備來說,這很好 - 我可以使用OpenGL ES繪製半透明圖像,這確實會在我的其他原生視圖上覆蓋透明度。Android EGL疊加透明度問題,截圖和顯示區別
但是,在Nexus 10和Note 2(以及最有可能的其他設備)上,半透明像素在物理顯示屏上看起來不正確,即使通過DDMS採集的截圖看起來絕對正確!這讓我難以置信 - 視覺顯示如何與截圖看起來如此不同?
看起來奇怪發生在幀緩衝區中的alpha值不是1(0xff)或0(0x00)的任何像素。
我附加了Nexus 10的DDMS截圖,顯示的測試卡圖像完全如其應該的樣子。我還附加了一張來自顯示器的照片,顯示了非常不同的圖像......如上所述,看起來EGL疊加alpha值不是0x00或0xff的像素被錯誤地顯示。注2是相同的。
有誰知道如何解決這個問題?這是我們的主要障礙,因爲我們甚至不知道如何以編程方式確定設備顯示是否存在問題。