一、關於布局適配
1、不要使用絕對布局
2、盡量使用match_parent 而不是fill_parent 。
3、能夠使用權重的地方盡量使用權重(android:layout_weight)
4、如果是純色背景,盡量使用android的shape 自定義。
5、如果需要在特定解析度下適配,可以在res目錄上新建layout-hxw.xml的資料夾。比如要適配1080*1800的螢幕(魅族mx3採用此解析度)則新建layout-1800x1080.xml的資料夾,然後在下面定義布局。android系統會優先查詢解析度相同的布局,如果不存在則換使用預設的layout下的布局。
二、關於製作
1、關於切圖。
關於切圖有幾個建議:
第一,長寬最好是3的倍數(根據android的推薦logo圖示的大小是48(mdpi),72(hdpi),96(xhdpi)得出的最小公約數)。
第二,長寬最好是偶數。因為奇數在進行等比壓縮的時候可能有問題。
第三,根據上面兩條,如果
長寬是6的倍數最理想。
2、關於圖示的適配。
然後接下來的一切就和設計稿沒什麼關係。在切好圖的基礎上,根據螢幕密度、畫素和實際大小的比例關係。假如設計司在480*800的解析度下做好了設計圖,並且切好圖,如果你需要適配720*1280螢幕,該怎麼做?根據比例,他們的關係是2:3,於是你需要按照1.5倍比例製作圖示,比如你在480*800的設計稿上切下來乙個20*20畫素的圖,那麼你就需要製作乙個等比放大成30*30畫素的圖示,這樣同乙個圖示在480*800的螢幕和720*1280的螢幕上顯示的實際大小才一樣。同理,如果你需要適配xxhdpi則需要在20*20的基礎上製作乙個等比放大成40*40畫素的圖示。
3、關於圖示的目錄,480*800切下來的圖我們放在drawable-hdpi目錄下,按照2:3放大的圖示放在drawable-xhdpi目錄下,按照2倍放大的圖示放在drawable-xxhdpi目錄下。
android會根據手機的密度優先查詢對應的目錄的資源,
比如408*800解析度下的手機如果密度是160,則自動載入drawable-hdpi這個目錄下的圖示,
如果720*1280密度是240的手機自動載入drawable-xhdpi這個目錄下的圖示。如果沒有這個資料夾,則查詢和240最接近的對應密度資料夾。
螢幕尺寸指螢幕的對角線的長度,單位是英吋,1英吋=2.54厘公尺
比如常見的螢幕尺寸有2.4、2.8、3.5、3.7、4.2、5.0、5.5、6.0等
螢幕解析度是指在橫縱向上的畫素點數,單位是px,1px=1個畫素點。一般以縱向畫素*橫向畫素,如1960*1080。
螢幕畫素密度是指每英吋上的畫素點數,單位是dpi,即「dot per inch」的縮寫。螢幕畫素密度與螢幕尺寸和螢幕解析度有關,在單一變化條件下,螢幕尺寸越小、解析度越高,畫素密度越大,反之越小。
在**中獲取螢幕畫素、螢幕密度
displaymetrics metric = new displaymetrics();
getwindowmanager().getdefaultdisplay().getmetrics(metric);
int width = metric.widthpixels; // 螢幕寬度(畫素)
int height = metric.heightpixels; // 螢幕高度(畫素)
float density = metric.density; // 螢幕密度(0.75 / 1.0 / 1.5)
int densitydpi = metric.densitydpi; // 螢幕密度dpi(120 / 160 / 240)
dpi是「dot per inch」的縮寫,每英吋畫素數。
iOS關於適配螢幕的問題 1
在以前,只要雖然蘋果就由3.5寸跟4寸屏,但是寬度都是沒有變化的,所以適配螢幕的問題還是很好做的。現在因為4.7寸的iphone6和5.5寸的iphone6 plus的寬度大了,適配起來就更加麻煩了 在網上找了很久,很多人說的都是影象 圖示的畫素問題,沒有提到怎麼適配。在這裡簡單說一下 但是這樣還是...
android螢幕適配
1 配置android應用程式適配在不同的手機上,需要在androidmanifest.xml檔案的manifest標籤中新增子元素 1 2 3 4 5 6 7 8 9 10 manifestxmlns android supports screens android smallscreens tr...
Android螢幕適配
在sdk中的幫助文件中。develpe training best practices supporting multiple screens 這裡有多屏適配的介紹。現做簡單記錄。screen size small 至少 426dp x 320dp normal 至少 470dp x 320dp l...