android 獲取屏幕像素大小的正確方法
相信看到此文章的時候,大多人已經(jīng)看了許多獲取屏幕像素的文章,從其他文章我們知道 屏幕的像素是根據(jù)DisplayMetrics類來獲取的
具體的計算方法是 width = widthPixels * density; height = heightPixels * density (ps: widthPixels 和 heightPixels ,density 都是從DisplayMetrics中獲取的)。
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int widthPixels= dm.widthPixels;
int heightPixels= dm.heightPixels;
float density = dm.density;
int screenWidth = widthPixels * density ;
int screenHeight = heightPixels * density ;
在320*480 的phone 上的 到的 widthPixels 值是320, heightPixels 值是480, density 的值是1.0。
在480*800 的phone 上的到的idthPixels 值是320, heightPixels 值是533, density 的值是1.5。
注意: 此處DisplayMetrics 不要使用context.getApplicationContext().getResources().getDisplayMetrics();
我用此方法在nexus one 中測試的時候得到的 density 的值是1.0 ,以至于我得不到正確的480 * 800 的像素。
相關(guān)文章
Flutter應(yīng)用框架搭建實現(xiàn)屏幕適配方案詳解
移動設(shè)備多樣性,特別是Android的碎片化嚴重,存在各種各樣的分辨率,flutter跨平臺開發(fā)又需要同時支持Android和IOS,為盡可能的還原設(shè)計圖效果提升用戶的體驗,根據(jù)設(shè)計稿設(shè)計屏幕ui的時候我們需要考慮到屏幕適配的問題2022-11-11Android中CountDownTimer倒計時器用法實例
這篇文章主要介紹了Android中CountDownTimer倒計時器用法,以實例形式分析了Android中CountDownTimer類的相關(guān)使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10深入解讀Android開發(fā)中Activity的生命周期
這篇文章主要介紹了Android開發(fā)中Activity的生命周期,包括Activity的停止和銷毀等重要內(nèi)容,非常推薦!需要的朋友可以參考下2015-12-12android?Service基礎(chǔ)(啟動服務(wù)與綁定服務(wù))
大家好,本篇文章主要講的是android?Service基礎(chǔ)(啟動服務(wù)與綁定服務(wù)),感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12