2012-03-13 72 views
1

我正在使用擴展基本表面視圖的類。這個類包含我的遊戲的主要邏輯。在課堂上,我有主要的更新功能以及我的繪圖代碼,這些代碼都是基於畫布的。Android自定義視圖 - 調整到不同的屏幕

我目前沒有在我的代碼中使用任何XML。我創建了一個新的SurfaceView類實例,並將其設置爲該活動的視圖。我的問題是這樣的,支持多種屏幕尺寸的最佳方式是什麼?

因爲我在寫一個遊戲,我不希望在新的屏幕尺寸有什麼不同的佈局。我只是想擴展遊戲規模,如果屏幕比例與我的開發設備不匹配,可能會顯示一些空白。

我已經閱讀了Android開發人員指南,但它最終並沒有給我,當你不使用XML答案實際執行戰略。

+0

應該有一些寬度和高度屬性,您的表面視圖獲取(也許在onMeasure左右)。使用它可以根據百分比定義所有佈局。 – zapl 2012-03-13 18:12:01

回答

1

我這裏有同樣的問題,但我會試着解釋我所目前發現的。

可以肯定的,你需要在遊戲運行畫面的知識,請訪問devoloper的頁面知道,讓他們的方式。

http://developer.android.com/reference/android/util/DisplayMetrics.html

您需要的密度獨立像素的工作,以確保您的遊戲的行爲是在每一個不同的顯示相同。有一個關於谷歌組的帖子,可能會幫助你理解dp,如果你還不知道它。

http://groups.google.com/a/googleproductforums.com/forum/#!category-topic/mobile/android-devices/jeflid4UsMQ

所以,現在的主要問題:圖像。

只有4種可繪製文件夾,因爲你肯定知道(低,中,高和xhigh DPI)。問題在於,10英寸的平板電腦和4英寸的SmarthPhone可能具有相同的分辨率或dpi(每英寸點數)。所以,當從相同的可繪製文件夾打印圖像時,即使設備的屏幕是兩倍大,它也會具有相同的大小。

在這一點上,你,你想有許多不同的解決方案。調整圖像大小,使整個視圖變大......但您可能需要DisplayMetrics類信息。我仍在努力做出決定,但如果您有任何更具體的問題,我會盡力回答。

相關問題