當前位置:首頁 » 安卓系統 » android長寬比

android長寬比

發布時間: 2025-07-05 07:34:11

1. android中怎麼實現手機不同解析度訪問的效果

android中不同手機解析度適配問題
在項目開發的過程中,同一個布局對應不同的手機會顯示出不同的效果。導致這個現象產生的原因是不同手機的解析度不同。在android sdk提供的幫助文檔中,我們可以看到各種手機的解析度和對應的屏大小。QVGA (240x320),WQVGA400(240x400),WQVGA432 (240x432),HVGA (320x480),WVGA800 (480x800),WVGA854 (480x854)。
目前android手機的解析度大致就是幫助文檔中描述的幾種。我們可以用兩種方式進行不同手機的適配。一種是在java代碼中,另外一種是在xml文件中。具體使用哪種方式更有效更合適,要看具體的情況而定。
在以前的項目中,我之前做過關於歷史聊天記錄,每頁顯示條數的匹配。不同的手機,每頁可以顯示歷史記錄的條數是不同的。我採用的是在java代碼中做匹配。不同解析度的手機,他們都有固定的屏高。例如,480x800,屏高是800。240x320,屏高是320。根據屏高為判定條件,為每一頁顯示歷史記錄的條數做一個限制。我個人覺得,在java代碼中做手機匹配,要看匹配的布局中,控制項是否太多,不太多,可以在java代碼中根據不同的情況修改,否則,java代碼將會顯得很冗長,修改起來也很麻煩。
在xml進行手機匹配,主要是針對布局中控制項太多,不方便在java代碼中修改的情況。在xml中解決不匹配問題很簡單,對於不同手機的解析度,建立對應的layout文件即可。例如:480x800,之間建立layout-800x400,240x320,建立layout-320x240。特別注意:大的寫在前面,例如800,320,小的寫在後面,例如480,240。建立了相應的layout後,還要在不同的手機上調整布局中的控制項大小和位置。
在本次項目中,我負責不同手機視圖的匹配問題,我選擇的是xml匹配方式,結果發現按上面的方式做了之後,對應解析度的手機的顯示沒有任何的效果,後來,我查看幫助文檔後,發現必須要在androidmainfest中進行如下代碼的配置:
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true" />
如果沒有這幾行代碼,不管你怎麼調整layout中的控制項,對應解析度的手機是沒有任何效果的。注意:由於android版本的不同,有些版本不支持xlargeScreens,可以直接將android:xlargeScreens="true"去掉。
來源:

android屏幕解析度適配
1. 多解析度支持
在設計之初,Android系統就被設計為一個可以在多種不同解析度的設備上運行的操作系統。對於應用程序來說,系統平台向它們提供的是一個穩定的,跨平台的運行環境,而關於如何將程序以正確的方式顯示到它所運行的平台上所需要的大部分技術細節,都由系統本身進行了處理,無需程序的干預。當然,系統本身也為程序提供了一系列API,所以在目標平台的解析度是可以完全確定的情況下,程序也可以精確的控制自身在目標平台上的界面顯示方式。
這個文檔會說明系統平台究竟提供了哪些解析度支持特性,與它們如何在程序中使用的信息。如果你遵循文檔中列出的方法,就很容易讓你的程序在所有支持的解析度下都能完美顯示。這樣你就可以用一個單獨的.apk文件,將你的程序發布到所有的平台上。
如果你已經發布過針對Android 1.5或更早版本平台的程序,你應該仔細閱讀這篇文檔,然後考慮一下到底如何讓自己的老程序可以在擁有各種不同解析度,並且運行著Android 1.6或更新平台上正常顯示。在絕大部分情況下,只需要對程序作出小小的修改就可以達到目的,但你仍然需要盡可能地在各種解析度的平台上進行測試。
特別的,如果你有一個已經完成的程序,又想讓它可以在超低解析度的設備(比如320×240)上正確運行,你需要閱讀「老程序的更新策略」,那篇文檔會告訴你應該怎麼做。
2. 術語和概念
屏幕尺寸
屏幕的物理尺寸,以屏幕的對角線長度作為依據(比如2.8寸,3.5寸)。
簡而言之,Android把所有的屏幕尺寸簡化為三大類:大,中,小。
程序可以針對這三種尺寸的屏幕提供三種不同的布局方案,然後系統會負責把你的布局方案以合適的方式渲染到對應的屏幕上。這個過程是不需要程序員用代碼來干預的。
屏幕長寬比
屏幕的物理長度與物理寬度的比例。程序可以為制定長寬比的屏幕提供製定的素材,只需要用系統提供的資源分類符long和notlong。
解析度
屏幕上擁有的像素的總數。注意,雖然大部分情況下解析度都被表示為「寬度×長度」,但解析度並不意味著屏幕長寬比。在Android系統中,程序一般並不直接處理解析度。
密度
以屏幕解析度為基礎,沿屏幕長寬方向排列的像素。
密度較低的屏幕,在長和寬方向都只有比較少的像素,而高密度的屏幕通常則會有很多——甚至會非常非常多——像素排列在同一區域。屏幕的密度是非常重要的,舉個例子,長寬以像素為單位定義的界面元素(比如一個按鈕),在低密度的屏幕上會顯得很大,但在高密度的屏幕上則會顯得很小。
密度無關的像素(DIP)
指一個抽象意義上的像素,程序用它來定義界面元素。它作為一個與實際密度無關的單位,幫助程序員構建一個布局方案(界面元素的寬度,高度,位置)。
一個與密度無關的像素,在邏輯尺寸上,與一個位於像素密度為160DPI的屏幕上的像素是一致的,這也是Android平台所假定的默認顯示設備。在運行的時候,平台會以目標屏幕的密度作為基準,「透明地」處理所有需要的DIP縮放操作。要把密度無關像素轉換為屏幕像素,可以用這樣一個簡單的公式:pixels = dips * (density / 160)。舉個例子,在DPI為240的屏幕上,1個DIP等於1.5個物理像素。我們強烈推薦你用DIP來定義你程序的界面布局,因為這樣可以保證你的UI在各種解析度的屏幕上都可以正常顯示。
支持的屏幕解析度范圍
1.5及更早版本的Android系統,在設計的時候假定系統只會運行在一種解析度的設備上——HVGA(320×480)解析度,尺寸為3.2寸。由於系統只能工作在一種屏幕上,開發人員就可以針對那個屏幕來編寫自己的程序,而無需去考慮程序在其他屏幕上的顯示問題。
但自從Android 1.6以來,系統引入了對多種尺寸、多種解析度屏幕的支持,以此滿足擁有各種配置的新平台的運行需求。這就意味著開發人員在針對Android 1.6或更新版系統開發程序的時候,需要為自己的程序在多種解析度的屏幕上良好顯示作出額外的設計。
為了簡化程序員面在對各種解析度時的困擾,也為了具備各種解析度的平台都可以直接運行這些程序,Android平台將所有的屏幕以密度和解析度為分類方式,各自分成了三類:
·三種主要的尺寸:大,正常,小;
·三種不同的密度:高(hdpi),中(mdpi)和低(ldpi)。
如果需要的話,程序可以為各種尺寸的屏幕提供不同的資源(主要是布局),也可以為各種密度的屏幕提供不同的資源(主要是點陣圖)。除此以外,程序不需要針對屏幕的尺寸或者密度作出任何額外的處理。在執行的時候,平台會根據屏幕本身的尺寸與密度特性,自動載入對應的資源,並把它們從邏輯像素(DIP,用於定義界面布局)轉換成屏幕上的物理像素。
下表列出了Android平台支持的屏幕中一些比較常用的型號,並顯示了系統是如何把它們分類到不同的屏幕配置里的。有些屏幕解析度並不在下面的列表上,但系統仍會把它們歸入下列的某一個類型中。
低密度(120),ldpi
中密度(160),mdpi
高密度(240),hdpi
小屏幕
·QVGA(240×320),2.6~3.0寸
普通屏幕
·WQVGA(240×400),3.2~3.5寸
·FWQVGA(240×432),3.5~3.8寸
·HVGA(320×480),3.0~3.5寸
·WVGA(480×800),3.3~4.0寸
·FWVGA(480×854),3.5~4.0寸
大屏幕
·WVGA(480×800),4.8~5.5寸
·FWVGA(480×854),5.0~5.8寸
如上表所示,所有解析度的屏幕,都圍繞在基準屏幕周圍,而基準屏幕在分類中,為「正常」尺寸,與「中」密度。之所以用HVGA屏幕作為基準屏幕,是因為所有針對Android 1.5或更早的程序都是針對這片屏幕所寫的(因為只支持這一片),比如T-Mobile G1。
雖然系統支持上面9種不同配置的屏幕,但你並不一定需要為它們都提供各自不同的資源。系統已經提供了足夠魯棒(就是在各種惡劣環境下正常工作,對環境變化不敏感)的兼容特性,用於在各種不同的屏幕上良好顯示你的程序。這在下面的文檔中會詳細描述,如果你需要更多的資料,請查看「與屏幕無關的最佳實踐」。
作者「Ant space」

2. 4.0寸的android手機,哪款屏幕長寬比例是窄而長的

在4.0寸的Android手機中,屏幕長寬比例窄而長的型號相對較少,且沒有直接符合極端窄長比例的普遍選項。以下是關於這一問題的詳細解答:

  • 常見型號屏幕比例:市面上常見的4.0寸左右的Android手機,如三星i9000、HTC G11、索愛X10i等,它們的屏幕比例通常為16:9,這是為了滿足大眾對於大屏手機的普遍需求。
  • 接近窄長比例的困難:若追求更為窄長的屏幕比例,即接近21:9的比例,這樣的手機在4.0寸屏幕尺寸中非常罕見。這種比例可以提供更為寬廣的橫向視野,對觀影、游戲等場景更為友好,但市場上針對這一特定需求的手機型號較少。
  • 特殊型號提及:里程碑3是一個屏幕尺寸接近4.0寸且比例稍特殊的例子,但其屏幕比例仍為16:9,並未達到極端窄長的效果。此外,該手機為電信版,使用其他網路環境可能受限。

綜上所述,對於尋求4.0寸且屏幕長寬比例窄而長的Android手機用戶來說,當前市場上的選擇相對有限。若對屏幕比例有極高要求,可能需要考慮其他尺寸或比例的手機,或者等待未來市場上可能出現更多針對特定需求的手機型號。

熱點內容
沒有許可權訪問計算機 發布:2025-07-05 13:29:11 瀏覽:417
javaweb開發教程視頻教程 發布:2025-07-05 13:24:41 瀏覽:665
康師傅控流腳本破解 發布:2025-07-05 13:17:27 瀏覽:225
java的開發流程 發布:2025-07-05 12:45:11 瀏覽:669
怎麼看內存卡配置 發布:2025-07-05 12:29:19 瀏覽:271
訪問學者英文個人簡歷 發布:2025-07-05 12:29:17 瀏覽:820
1970linux 發布:2025-07-05 12:12:43 瀏覽:109
解壓挑刺 發布:2025-07-05 12:12:12 瀏覽:537
rarlinux壓縮 發布:2025-07-05 12:08:52 瀏覽:399
手機點菜app怎麼連接電腦伺服器 發布:2025-07-05 11:13:05 瀏覽:944