我認爲最近這個問題的答案已經改變了,但我會回顧歷史解答。
Pre-Honeycomb,解決方案是創建一個動態佈局,可以根據屏幕大小調整自己(使用9補丁,下沉,擴大/縮小布局等)。這意味着您的所有視圖都不會是「像素完美」,但您可以根據不同的寬高比進行調整。有時你會想出不同的橫向和縱向佈局,但除此之外,定製並不是必需的。
隨着Honeycomb的發佈,問題變得更加複雜。現在,您的屏幕尺寸大不相同,您的應用程序伸展看起來並不盡如人意。你的平板電腦從7英寸延伸到10英寸 - 哪一個是「大」還是「大」? 3.0和3.1是一個尷尬的時期,您必須檢測API版本/屏幕大小並相應地配置您的應用(假設您的應用同時支持手機和平板電腦)。
但是,一切都在3.2及以上的變化。現在,可以這樣描述最佳實踐:像網頁設計師那樣思考,而不是Android設計師。不要考慮手機和平板電腦,還是考慮橫向和縱向佈局,而不要考慮適用於特定屏幕尺寸的佈局。
這種思想過程是由this blog post和these slides詳細,但我認爲這是最好去一些網頁樣本,並看到它的行動證明。嘗試訪問this page(或this page或this page)並更改瀏覽器的大小。注意它們是如何根據寬度動態改變佈局的 - 這也是您在Android中需要的。
所以,現在你已經有了一個可以在屏幕寬度150dp和400dp之間工作的佈局,另一個工作在401dp和800dp之間;第三個可以處理800dp和1000dp等等。這種思維方式並不會以作爲開發人員的身份完成,而是比以前做更多的工作 - 而不是定義電話佈局,平板電腦佈局(每個人都有一個肖像/風景佈局),您只需定義一些適用於不同寬度的佈局。
現在我們處於一個尷尬的過渡階段,因爲大多數人沒有有支持這種做法的設備。所以「最佳實踐」基本上都是上述的。在幾年之內,當每個人都有ICS和超越,那麼我們都可以鬆了一口氣。我很抱歉,如果你正在尋找特定的解決方案,這個答案最終是相對理論性的而不是具體的答案,主要是因爲我覺得這個問題是非常開放的,如果你有一個特定的問題,你想要。要解決,我可以嘗試解決其他地方)
沒有理由道歉,在閱讀你的答案後,這是完全正確和清晰的,情況相當複雜。最好提出這個理論,而不是寫出所有可能的組合。謝謝 –