簡體   English   中英

屏幕尺寸和布局

[英]Screen sizes and layouts

我目前仍然堅持理解文檔可能存在的問題。

我一直在閱讀關於支持多個屏幕的文檔,我有一些問題,特別是HTC DesireHTC Legend之間的layoyt差異。

根據我的理解,通過查看開發人員文檔中的屏幕矩陣,Legend是一個“普通”屏幕,Desire是一個大屏幕。

添加布局目錄layout /,layout-small /和layout-large解決了我的小屏幕設備問題。 但現在,當試圖讓應用程序在Desire和Legend中看起來都很好時,看起來它們都使用了正常的屏幕布局。

任何提示,解決方案或解釋?

HTC Desire的-它的屏幕為480×800 WVGA800 -被認為是正常的屏幕,華電國際,而HTC傳奇-其屏幕為320×480的HVGA -被認為是正常的屏幕MDPI(看表1 這里 )。 因此,正常的屏幕布局和mdpi圖形用於兩種設備,但由於Desire具有hdpi屏幕,因此Android會縮放圖形(通常結果是它們看起來模糊)。 為了使Desire上的布局看起來很好,你應該提供hdpi圖形並將它們放在名為drawable-hdpi的文件夾中。

在布局中,我使用布局權重來指定尺寸。 在各種屏幕設備中運行應用程序時,這將有很大幫助。

在這里查看layout_weights,
http://mobiforge.com/designing/story/understanding-user-interface-android-part-1-layouts

嘗試在普通布局中使用wrap_content,fill_parent或dp單元。 無論如何,你正在做的幾個布局是一個乏味但可能更好的選擇。 在清單中設置此項

  <supports-screens 
    android:largeScreens="true" 
    android:smallScreens="true" 
    android:normalScreens="true" 
 />

並獲得正在使用的屏幕大小

DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
height = displaymetrics.heightPixels;
width = displaymetrics.widthPixels;
Log.e("FirstImage", "Width = "+width+"Height = "+height);

一旦你有了屏幕的大小,我想你知道如何為它分配一定的預定義(由你)布局。

我希望這有幫助,如果你還有任何問題,請在下面發表評論,我們會看到如何解決它!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM