2012-03-02 48 views
0

過去兩天來,我一直在使用opengl中的紋理問題,紋理只是在某些設備上呈現爲白色框,並且在其他所有方面都表現良好。我再次檢查並且僅使用了POT(兩個冪次)圖像並且沒有解決問題。從我讀的內容來看,我認爲android正在對這些特定設備上的位圖進行一些操作,這些設備將它們從維度上敲掉,然後使紋理呈現空白或白色。Android - 如何讓android無法重新調整位圖圖像的尺寸

我正在使用的這些圖像沒有存儲在apk中,儘管我試圖使用存儲在本地資源中的圖像,並且它們似乎沒有什麼區別,無論它們是本地存儲還是使用圖像流式傳輸到設備中的流的形式。我唯一的猜測是,我需要做一些事情來保持android的某些版本從調整圖像大小,但我不知道如何做到這一點。

回答

3

對於與apk一起存儲爲資源的位圖,可以通過將系統放入文件夾res/drawable-nodpi來防止系統對其進行縮放。對於從流中創建的圖像,系統通常假定它們用於中等密度(160dpi)的顯示,並將相應地縮放。您可以通過如here所述的各種API調用來阻止此操作。

推薦的方法是爲支持的每個屏幕分辨率提供單獨的圖形資源。基本技術描述如下here

+0

嘿感謝鏈接:)我看了看很多材料在android文檔,但跨之前沒有來。 – 2012-03-02 06:10:47

+0

成功!!!!無論如何,直到我的應用程序開始運行,並且在我的測試組旁邊的其他設備給了我更多看不見的錯誤:p但是,我終於得到了一些本地資源繪製在我的對象在某些設備上的opengl上的對象 – 2012-03-02 07:02:24

1

您是否嘗試過使用9patch圖片,如果你正確地補一補,Android將不會縮放圖像

+0

沒有我從來沒有嘗試過與9patches搞亂然而我想我讀的地方,android系統將使用它們時忽略某些標誌。不知道這對我的使用會是不好還是不好,但是你在使用opengl的時候是否使用了它們? – 2012-03-02 07:04:09