當前位置:首頁 » 安卓系統 » android像素值

android像素值

發布時間: 2022-07-30 08:10:19

㈠ 手機UI設計時像素和清晰度是多大

1.術語和概念

Android手機ui設計解析度基礎知識

Screen size(屏幕尺寸)

指的是手機實際的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸

摩托羅拉milestone手機是3.7英寸

Aspect Ratio(寬高比率)

指的是實際的物理尺寸寬高比率,分為long和nolong

Milestone是16:9,屬於long

Resolution(解析度)

和電腦的解析度概念一樣,指手機屏幕縱、橫方向像素個數

Milestone是854*480

DPI(dot per inch)

每英寸像素數,如120dpi,160dpi等,假設QVGA(320*240)解析度的屏幕物理尺寸是(2英寸*1.5英寸),dpi=160

可以反映屏幕的清晰度,用於縮放UI的

Density(密度)

屏幕里像素值濃度,resolution/Screen size可以反映出手機密度,

Density-independent pixel (dip)

指的是邏輯密度計算單位,dip和具體像素值的對應公式是dip/pixel=dpi值/160,也就是px = dp * (dpi / 160)

2. DPI值計算

比如:計算WVGA(800*480)解析度,3.7英寸的密度DPI,如圖1所示

圖1

Diagonal pixel表示對角線的像素值(=

),DPI=933/3.7=252

3.手機屏幕的分類

1)根據手機屏幕密度(DPI)或屏幕尺寸大小分為以下3類,如圖2所示

圖2

2)手機屏幕分類和像素密度的對應關系如表1所示:

Low density (120), ldpi

Medium density (160), mdpi

High density (240), hdpi

Small screen

QVGA (240×320)

Normal screen

WQVGA400 (240×400)WQVGA432 (240×432)

HVGA (320×480)

WVGA800 (480×800)WVGA854 (480×854)

Large screen

WVGA800* (480×800)WVGA854* (480×854)

表1

3)手機尺寸分布情況(http://developer.android.com/resources/dashboard/screens.html)如圖3所示,目前主要是以解析度為800*480和854*480的手機用戶居多

圖3

從以上的屏幕尺寸分布情況上看,其實手機只要考慮3-4.5寸之間密度為1和1.5的手機

4. ui設計

從開發角度講,應用程序會根據3類Android手機屏幕提供3套UI布局文件,但是相應界面圖標也需要提供3套,如表2所示

Icon Type

Standard Asset Sizes (in Pixels), for Generalized Screen Densities

Low density screen (ldpi)

Medium density screen (mdpi)

High density screen (hdpi)

Launcher

36 x 36 px

48 x 48 px

72 x 72 px

Menu

36 x 36 px

48 x 48 px

72 x 72 px

Status Bar

24 x 24 px

32 x 32 px

48 x 48 px

Tab

24 x 24 px

32 x 32 px

48 x 48 px

Dialog

24 x 24 px

32 x 32 px

48 x 48 px

List View

24 x 24 px

32 x 32 px

48 x 48 px

表2

5.如何做到自適應屏幕大小呢?

1)界面布局方面

需要根據物理尺寸的大小准備5套布局,layout(放一些通用布局xml文件,比如界面中頂部和底部的布局,不會隨著屏幕大小變化,類似windos窗口的title bar),layout-small(屏幕尺寸小於3英寸左右的布局),layout-normal(屏幕尺寸小於4.5英寸左右),layout-large(4英寸-7英寸之間),layout-xlarge(7-10英寸之間)

2)圖片資源方面

需要根據dpi值准備5套圖片資源,drawable,drawalbe-ldpi,drawable-mdpi,drawable-hdpi,drawable-xhdpi

Android有個自動匹配機制去選擇對應的布局和圖片資源


㈡ Android中dip,dp,sp,pt和px的區別

dp:
這個是最常用但也最難理解的尺寸單位。它與「像素密度」密切相關。
不同的手機/平板可能具有不同的像素密度,例如同為4寸手機,有480x320解析度的也有800x480解析度的,前者的像素密度就比較低。
dip:
與dp完全相同,只是名字不同而已。
在早期的Android版本里多使用dip,後來為了與sp統一就建議使用dp這個名字了。
sp:
與縮放無關的抽象像素(Scale-independent Pixel),只用於表示字體大小時使用。
sp和dp很類似但唯一的區別是,Android系統允許用戶自定義文字尺寸大小(小、正常、大、超大等等),當文字尺寸是「正常」時1sp=1dp=0.00625英寸,而當文字尺寸是「大」或「超大」時,1sp>1dp=0.00625英寸。
pt:
即point,是一個標準的長度單位,1pt=1/72英寸,用於印刷業,Android中沒見到哪裡用過。
px:
即像素(Pixel),1px代表屏幕上一個物理的像素點。
另外還有一個:
dpi:
是dot per inch的縮寫,就是每英寸的像素數,也叫做屏幕密度。
這個值越大,屏幕就越清晰。

慕課上有關於這個的詳細視頻講解,你可以去看看
http://www.imooc.com/video/9349

㈢ android 下怎樣獲取圖片像素值

int[] pixels = new int[bit.getWidth()*bit.getHeight()];//保存所有的像素的數組,圖片寬×高

bit.getPixels(pixels,0,bit.getWidth(),0,0,bit.getWidth(),bit.getHeight());
for(int i = 0; i < pixels.length; i++){
int clr = pixels[i];
int red = (clr & 0x00ff0000) >> 16; //取高兩位
int green = (clr & 0x0000ff00) >> 8; //取中兩位
int blue = clr & 0x000000ff; //取低兩位
System.out.println("r="+red+",g="+green+",b="+blue);

}
其中getPixels中第三個參數要為圖片的寬度

㈣ android中繪圖,坐標默認用的是什麼單位

默認單位是px也就是像素,一般不推薦用px。因為跟設備有關系,你可以使用TypedValue這個對象.

下面是這兩個的轉換函數,您可以先把像素轉換成dp

java">publicclassDensityUtil{

/**
*根據手機的解析度從dp的單位轉成為px(像素)
*/
publicstaticintdip2px(Contextcontext,floatdpValue){
finalfloatscale=context.getResources().getDisplayMetrics().density;
return(int)(dpValue*scale+0.5f);
}

/**
*根據手機的解析度從px(像素)的單位轉成為dp
*/
publicstaticintpx2dip(Contextcontext,floatpxValue){
finalfloatscale=context.getResources().getDisplayMetrics().density;
return(int)(pxValue/scale+0.5f);
}
}

一、px

像素,是屏幕上顯示數據的最基本的點。

二、dpi

dpi(Dots Per Inch):每英寸點數,也可稱為像素密度,即屏幕對角線像素值÷英寸值

比如480x800解析度4.0英寸的手機計算的DPI=

三、dp

dp(與dip相同):在每英寸160點的顯示器上,1dp = 1px,即px = dp(dpi/160)

假設兩塊屏幕尺寸一樣,那屏幕一的dpi值是右邊的兩倍,如果屏幕一dpi為160,那屏幕二dpi即為320,設置160dp的情況下

屏幕一:160px=160dp(160dpi/160)

屏幕二:320px=160dp(320dpi/160)

根據關系,可得出:

屏幕一控制項長度為160px,屏幕二控制項長度為320px,讓控制項長度適應不同屏幕大小,用dp很合適。

四、sp

sp(scaled pixels) 通常用於指定字體大小,當用戶修改手機顯示字體時,字體大小會隨之改變

對於UI布局,要使用dip/dp作為單位,對應字體要是有sp作為單位,盡量少用px作為單位。

註:解析度與屏幕大小沒有關系,屏幕大小是物理外觀,而解析度則是顯示能力。


如果您對回答滿意,請關注一下姓名中的微博,謝謝。

㈤ Android中一圓環圖片,圓環上某一圈坐標點算出來,獲取圖片上的像素值,報錯

public void getPixColor(int imhg){
Bitmap src = BitmapFactory.decodeResource(getResources(),imhg);
int A, R, G, B;
int pixelColor;
int height = src.getHeight();
int width = src.getWidth();

for (int y = 0; y < height; y++) {
for (int x = 0; x < width; x++) {
pixelColor = src.getPixel(x, y);
A = Color.alpha(pixelColor);
R = Color.red(pixelColor);
G = Color.green(pixelColor);
B = Color.blue(pixelColor);
if (R>0||G>0||B>0){
tv_tilte2.setTextColor(Color.rgb(R,G, B));
}

}
}

}

㈥ android ui界面設計設計什麼像素

Android 開發字體的大小需要用google提供的sp單位,而控制項的大小需要使用dip 或者dp。
dp(或者dip device independent pixels)一種基於屏幕密度的抽象單位。在每英寸160點的顯示器上,1dp=1px。不同設備有不同的顯示效果,這個和設備硬體有關。
sp(Scaled Pixels)主要用於字體顯示,與刻度無關的一種像素,與dp類似,但是可以根據用戶的字體大小首選項進行縮放。
xp即像素,1px代表屏幕上一個物理的像素點,px單位不被建議使用,因為同樣100px的圖片,在不同手機上顯示的實際大小可能不同。

㈦ 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中的手機屏幕像素的幾種獲取方式

使用Activity類中的方法來獲取,使用范圍是在Activity的類及子類中和有傳入Activity類及子類的對象參數的方法中使用
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 通過Activity類中的getWindowManager()方法獲取窗口管理,再調用getDefaultDisplay()方法獲取獲取Display對象
Display display = getWindowManager().getDefaultDisplay();
// 方法一(推薦使用)使用Point來保存屏幕寬、高兩個數據
Point outSize = new Point();
// 通過Display對象獲取屏幕寬、高數據並保存到Point對象中
display.getSize(outSize);
// 從Point對象中獲取寬、高
int x = outSize.x;
int y = outSize.y;
// 通過吐司顯示屏幕寬、高數據
Toast.makeText(this, "手機像素為:" + x + "x" + y, Toast.LENGTH_LONG).show();
// 方法二(不推薦使用)直接通過Display對象獲取屏幕寬、高數據
int width = display.getWidth();
int height = display.getHeight();
// 通過吐司顯示屏幕寬、高數據
Toast.makeText(this, "手機像素為:" + width + "x" + height, Toast.LENGTH_LONG).show();
}
}

㈨ android中如何獲得像素點的顏色值

mBitmap2.getPixels(pixels, 0, w, 0, 0, w, h);//獲得mBitmap2的像素顏色值,賦值給pixels,第三個參數為一行的像素數(矩形的寬)mBitmap3 = Bitmap.createBitmap(pixels, 0, w, w, h, Bitmap.Config.ARGB_8888);//用上面的pixels顏色數組創建一個Bitmap應該能幫到你吧

㈩ 推薦一款高像素的android手機,謝謝,攝像頭最好大於1200萬像素

華為 P20 Pro很不錯,以下是參數:
1.拍照:後置徠卡三攝:4000萬像素(彩色,f/1.8光圈)+2000萬像素(黑白,f/1.6光圈)+800萬像素(長焦,f/2.4光圈),徠卡鏡頭,支持自動對焦(激光對焦、深度對焦、相位對焦、反差對焦),支持華為AI防抖。前置單攝:2400萬像素,f/2.0光圈,支持固定焦距,帶來革命性的攝影體驗和拍攝效果。
2.處理器:採用HUAWEI Kirin 970 (麒麟970)八核 + 微智核i7處理器,玩游戲更流暢更省電。
3.屏幕:屏幕尺寸:6.1英寸,屏幕色彩為1670萬色,解析度:FHD+ 1080 x 2240 像素,採用OLED全面屏,機身輕薄、邊角圓潤,拿在手裡非常舒適。
4.電池:電池容量:4000mAh(典型值),使用標配5V/4.5A兼容4.5V/5A充電器。理論充電時間約1.5小時,長續航。
您可登陸華為商城官網查看更多詳細參數,根據自己的喜好選擇。

熱點內容
openwrt編譯零基礎 發布:2025-01-21 01:53:30 瀏覽:19
視頻聊天室源碼php 發布:2025-01-21 01:39:29 瀏覽:938
游戲腳本xp 發布:2025-01-21 01:25:48 瀏覽:209
cfa建模需要什麼電腦配置 發布:2025-01-21 01:16:41 瀏覽:96
配置獲取異常怎麼辦 發布:2025-01-21 01:16:29 瀏覽:641
植發都加密嗎 發布:2025-01-21 01:16:28 瀏覽:735
工商保障卡原始密碼是什麼 發布:2025-01-21 01:09:33 瀏覽:786
sqlserver2012sp 發布:2025-01-21 01:06:23 瀏覽:888
驚變在線看ftp 發布:2025-01-21 01:06:20 瀏覽:233
用近似歸演算法 發布:2025-01-21 00:51:56 瀏覽:517