導航:首頁 > 操作系統 > 安卓pt是什麼

安卓pt是什麼

發布時間:2022-01-14 14:20:05

『壹』 在 android 中,在屏幕密度為160時,1pt 大概等於多少sp

在 Android 中, 1pt 大概等於 2.22sp以上供參考,
與解析度無關的度量單位可以解決這一問題。Android支持下列所有單位。
px(像素):屏幕上的點。
in(英寸):長度單位。
mm(毫米):長度單位。
pt(磅):1/72英寸。
dp(與密度無關的像素):一種基於屏幕密度的抽象單位。在每英寸160點的顯示器上,1dp = 1px。
dip:與dp相同,多用於android/ophone示例中。
sp(與刻度無關的像素):與dp類似,但是可以根據用戶的字體大小首選項進行縮放。
解析度:整個屏是多少點,比如800x480,它是對於軟體來說的顯示單位,以px為單位的點。 density(密度)值表示每英寸有多少個顯示點,與解析度是兩個概念。apk的資源包中,

當屏幕density=240時使用hdpi標簽的資源
當屏幕density=160時,使用mdpi標簽的資源
當屏幕density=120時,使用ldpi標簽的資源。
一般android設置長度和寬度多用dip,設置字體大小多用sp. 在屏幕密度為160,1dp=1px=1dip, 1pt = 160/72 sp 1pt = 1/72 英寸.當屏幕密度為240時,1dp=1dip=1.5px.

『貳』 關於Android的字體問題,字體單位上,sp和pt應該怎樣換算才對

Photoshop 里默認 1pt = 1px (設置72ppi的情況下),
sp 可以理解為 dp,
所以問題就轉換為 px 和 dp 的轉換方式。

『叄』 icpt是什麼手機

就是可以打電話發簡訊的具有最基本手機功能的機子,沒有什麼需求可以使用。如果可以盡量選擇品牌,主要是為了售後的保障。

『肆』 android中pt怎麼轉成sp

先看下TypedValue.appplyDimension的源碼
[mw_shl_code=java,true]public static float applyDimension(int unit, float value, DisplayMetrics metrics) {
switch (unit) {
case COMPLEX_UNIT_PX:
return value;
case COMPLEX_UNIT_DIP:
return value * metrics.density;
case COMPLEX_UNIT_SP:
return value * metrics.scaledDensity;
case COMPLEX_UNIT_PT:
return value * metrics.xdpi * (1.0f/72);
case COMPLEX_UNIT_IN:
return value * metrics.xdpi;
case COMPLEX_UNIT_MM:
return value * metrics.xdpi * (1.0f/25.4f);
}
return 0;
}[/mw_shl_code]

從代碼中可以看到pt轉px和sp轉px的方法,所以轉換成px再轉成sp就可以了,可以自己寫個方法一次轉換啦:
[mw_shl_code=java,true]value * metrics.xdpi * (1.0f/72) / metrics.scaledDensity = value * metrics.xdpi * (1.0f/(72 * metrics.scaledDensity);[/mw_shl_code]

不然先算出px再從px算pt的話有兩次精度損失。

『伍』 Android中dip,dp,sp,pt和px的區別詳解

過去,程序員通常以像素為單位設計計算機用戶界面。例如:圖片大小為80×32像素。這樣處理的問題在於,如果在一個每英寸點數(dpi)更高的新顯示器上運行該程序,則用戶界面會顯得很小。在有些情況下,用戶界面可能會小到難以看清內容。由此我們採用與解析度無關的度量單位來開發程序就能夠解決這個問題。Android應用開發支持不同的度量單位。
度量單位含義
dip: device independent pixels(設備獨立像素). 不同設備有不同的顯示效果,這個和設備硬體有關,一般我們為了支持WVGA、HVGA和QVGA 推薦使用這個,不依賴像素。
dp: dip是一樣的
px: pixels(像素). 不同設備顯示效果相同,一般我們HVGA代表320x480像素,這個用的比較多。
pt: point,是一個標準的長度單位,1pt=1/72英寸,用於印刷業,非常簡單易用;
sp: scaled pixels(放大像素). 主要用於字體顯示best for textsize。
in(英寸):長度單位。
mm(毫米):長度單位。
度量單位的換算公式
在android源碼包TypedValue.java中,我們看如下函數:
代碼如下:
public static float applyDimension(int unit, float value,
DisplayMetrics metrics)
{
switch (unit) {
case COMPLEX_UNIT_PX:
return value;
case COMPLEX_UNIT_DIP:
return value * metrics.density;
case COMPLEX_UNIT_SP:
return value * metrics.scaledDensity;
case COMPLEX_UNIT_PT:
return value * metrics.xdpi * (1.0f/72);
case COMPLEX_UNIT_IN:
return value * metrics.xdpi;
case COMPLEX_UNIT_MM:
return value * metrics.xdpi * (1.0f/25.4f);
}
return 0;
}
該函數功能:是把各單位換算為像素。
metrics.density:默認值為DENSITY_DEVICE / (float) DENSITY_DEFAULT;
metrics.scaledDensity:默認值為DENSITY_DEVICE / (float) DENSITY_DEFAULT;
metrics.xdpi:默認值為DENSITY_DEVICE;
DENSITY_DEVICE:為屏幕密度
DENSITY_DEFAULT:默認值為160
屏幕密度:表示每英寸有多少個顯示點,與解析度是兩個不同的概念。
據px = dip * density / 160,則當屏幕密度為160時,px = dip
根據 google 的建議,TextView 的字型大小最好使用 sp 做單位,而且查看TextView的源碼可知Android默認使用sp作為字型大小單位。將dip作為其他元素的單位。

『陸』 Android像素單位dp,sp,px,pt的區別和比較

dp = dip : device independent pixels(設備獨立像素). 不同設備有不同的顯示效果,這個和設備硬體有關,一般我們為了支持WVGA、HVGA和QVGA 推薦使用這個,不依賴像素。

px: pixels(像素). 不同設備顯示效果相同,一般我們HVGA代表320x480像素,這個用的比較多。

pt: point,是一個標準的長度單位,1pt=1/72英寸,用於印刷業,非常簡單易用;

sp: scaled pixels(放大像素). 主要用於字體顯示best for textsize。

由此,根據 google 的建議,TextView 的字型大小最好使用 sp 做單位,而且查看

TextView

的源碼可知 Android 默認使用 sp 作為字型大小單位。

在 Android 中, 1pt 大概等於 2.22sp

以上供參考,如果 UI 能夠以 sp 為單位提供設計是最好的,如果設計中沒有 sp

的概念,則開發人員也可以通過適當的換算取近似值。

過去,程序員通常以像素為單位設計計算機用戶界面。例如,定義一個寬度為300像素的表單欄位,列之間的間距為5個像素,圖標大小為16×16像素 等。這樣處理的問題在於,如果在一個每英寸點數(dpi)更高的新顯示器上運行該程序,則用戶界面會顯得很小。在有些情況下,用戶界面可能會小到難以看清 內容。

與解析度無關的度量單位可以解決這一問題。Android支持下列所有單位。

px(像素):屏幕上的點。

in(英寸):長度單位。

mm(毫米):長度單位。

pt(磅):1/72英寸。

dp(與密度無關的像素):一種基於屏幕密度的抽象單位。在每英寸160點的顯示器上,1dp = 1px。

dip:與dp相同,多用於android/ophone示例中。

sp(與刻度無關的像素):與dp類似,但是可以根據用戶的字體大小首選項進行縮放。

為了使用戶界面能夠在現在和將來的顯示器類型上正常顯示,建議大家始終使用sp作為文字大小的單位,將dip作為其他元素的單位。當然,也可以考慮使用矢量圖形,而不是用點陣圖

『柒』 android各種單位都是什麼意思

px就是一個像素寬度-獨立像素(設備),設備獨立像素(dip)是你想使用的設備的字體大小,而且設備獨立像素對於所有的事情。在這里設備獨立像素——dp http://developer.android.com/guide/topics/resources/more-resources.html#Dimension
Px 像素-相當於屏幕上的實際像素。
In 英寸-基於屏幕的物理尺寸
Mm 毫米-基於屏幕的物理尺寸
Pt 點-基於屏幕的物理尺寸,英寸的72分之一
Dp 密度-獨立像素-一個基於屏幕的物理密度的抽象的單位。這個單位和160解析度的屏幕是成比例的,所以在一個160解析度的屏幕下,1dp就是1px。Dp和像素的比率將會隨著屏幕的密度改變而改變,但是並不一定就是正比。注意:編譯器既接受「dip」也接受「dp」,盡管dp比sp更符合。
Sp 刻度-獨立像素-它就像dp單位,但是它也取決於用戶偏好的字體大小。當指定字體大小的時候,我推薦您使用這個單位,因為它既調整了屏幕的密度,也調整了使用者的偏好。

『捌』 安卓系統中dp,px,pt,sp 的區別 以及dp 和 px 互轉

dip: device independent pixels(設備獨立像素). 一般我們為了支持多種解析度如WVGA、HVGA和QVGA 推薦使用這個,不依賴像素。
dp: dip是一樣的,谷歌官方推薦使用這個
px: pixels(像素). 不同設備顯示效果相同,一般我們HVGA代表320x480像素,這個用的比較少。
pt: point,是一個標準的長度單位,1pt=1/72英寸,用於印刷業,非常簡單易用;
sp: scaled pixels(放大像素). 主要用於字體顯示best for textsize。

『玖』 Android的px,dp和sp等單位的區別詳解

px:

即像素,1px代表屏幕上一個物理的像素點;
px單位不被建議使用,因為同樣100px的圖片,在不同手機上顯示的實際大小可能不同

dp:

這個是最常用但也最難理解的尺寸單位。它與「像素密度」密切相關,所以首先我們解釋一下什麼是像素密度。假設有一部手機,屏幕的物理尺寸為1.5英寸x2英寸,屏幕解析度為240x320,則我們可以計算出在這部手機的屏幕上,每英寸包含的像素點的數量為240/1.5=160dpi(橫向)或320/2=160dpi(縱向),160dpi就是這部手機的像素密度,像素密度的單位dpi是Dots Per Inch的縮寫,即每英寸像素數量。橫向和縱向的這個值都是相同的,原因是大部分手機屏幕使用正方形的像素點。
不同的手機/平板可能具有不同的像素密度,例如同為4寸手機,有480x320解析度的也有800x480解析度的,前者的像素密度就比較低。
Android系統定義了四種像素密度:低(120dpi)、中(160dpi)、高(240dpi)和超高(320dpi),它們對應的dp到px的系數分別為0.75、1、1.5和2,這個系數乘以dp長度就是像素數。
例如界面上有一個長度為「100dp」的圖片,那麼它在240dpi的手機上實際顯示為80x1.5=120px,在320dpi的手機上實際顯示為80x2=160px。如果你拿這兩部手機放在一起對比,會發現這個圖片的物理尺寸「差不多」,這就是使用dp作為單位的效果。

dip:

與dp完全相同,只是名字不同而已。在早期的Android版本里多使用dip,後來為了與sp統一就建議使用dp這個名字了。
sp:
與縮放無關的抽象像素(Scale-independent Pixel)。sp和dp很類似但唯一的區別是,Android系統允許用戶自定義文字尺寸大小(小、正常、大、超大等等),當文字尺寸是「正常」時1sp=1dp=0.00625英寸,而當文字尺寸是「大」或「超大」時,1sp>1dp=0.00625英寸。類似我們在windows里調整字體尺寸以後的效果——窗口大小不變,只有文字大小改變。
還有幾個比較少用到的尺寸單位:
mm:
即毫米;
in:
即英寸,1英寸=2.54厘米(約);
pt:
1pt=1/72英寸=0.035厘米;
最佳實踐,文字的尺寸一律用sp單位,非文字的尺寸一律使用dp單位。例如textSize="16sp"、layout_width="60dp";偶爾需要使用px單位,例如需要在屏幕上畫一條細的分隔線時:
<View layout_width="match_parent" layout_height="1px"/>

補充:
1. android.view.ViewGroup.LayoutParams.height及width這兩個屬性的單位為像素,但是為了兼容多種解析度的手機,我們需要最好使用dp。
2. 根據手機的解析度從dp的單位轉成px
public static int dip2px(Context context, float dpValue){
final float scale = context.getResources().getDisplayMetrics().density;
return (int)(dpValue*scale + 0.5f);
}
3.根據手機的解析度從px轉成dp
public static int px2dip(Context context, float pxValue){
final float scale = context.getResources().getDisplayMetrics().density;
return (int)(pxValue/scale + 0.5f);
}

『拾』 Android中dip,dp,sp,pt和px的區別

dip和dp是一樣的

dip/dp(與密度無關的像素):邏輯長度單位,在 160 dpi 屏幕上,1dp=1px=1/160英寸。隨著密度變化,對應的像素數量也變化,但並沒有直接的變化比例。

sp(與密度和字體縮放度無關的像素):與dp類似,但是可以根據用戶的字體大小首選項進行縮放。

pt(Points ,磅):屏幕物理長度單位, 表示一個點,是屏幕的物理尺寸。大小為1英寸的1/72。

px(Pixels ,像素):對應屏幕上的實際像素點。例如,320*480的屏幕在橫向有320個象素,在縱向有480個象素。

另外還有兩個未提到的是in和mm

in(Inches ,英寸):屏幕物理長度單位。每英寸等於2.54厘米。例如,形容手機屏幕大小,經常說,3.2(英)寸、3.5(英)寸、4(英)寸就是指這個單位。這些尺寸是屏幕的對角線長度。如果手機的屏幕是3.2英寸,表示手機的屏幕(可視區域)對角線長度是3.2*2.54 = 8.128厘米。讀者可以去量一量自己的手機屏幕,看和實際的尺寸是否一致。

mm(Millimeters ,毫米):屏幕物理長度單位

閱讀全文

與安卓pt是什麼相關的資料

熱點內容
精品php源碼 瀏覽:960
自己編寫雲伺服器搶紅包 瀏覽:203
java解壓縮文件加密 瀏覽:887
dlink列印伺服器默認地址 瀏覽:353
php休眠函數 瀏覽:372
金蝶如何打開伺服器 瀏覽:766
e4a手游輔助源碼 瀏覽:777
什麼app可以實時直播 瀏覽:106
蘋果13的app閃退什麼原因 瀏覽:775
尾盤選股源碼公式 瀏覽:450
php日期運算 瀏覽:931
天龍八部長歌伺服器什麼時候開的 瀏覽:199
鬼泣4模型在那個文件夾 瀏覽:229
單片機的串列口 瀏覽:58
phpjson轉化為數組 瀏覽:268
pdf導入excel 瀏覽:428
蘋果xsmax信任app在哪裡設置 瀏覽:53
自動外鏈php源碼 瀏覽:245
我的世界新手獎勵箱命令 瀏覽:146
linux更新vim 瀏覽:998