dp转换px

需要用到的相关:

        DisplayMetrics:根据名称 <显示的度量> 即可拿到我们需要的相关参数   
        怎样拿到含有相关参数的 DisplayMetrics : 
                 1:  getResources().getDisplayMetrics();  
2: DisplayMetrics displayMetrics= new DisplayMetrics();
                     getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
新建DisplayMetrics对象并将其传入getMetrics()中会将相关参数包装到displayMetrics对象中。
	
	
       density:  密度比例(相对160p分辨率,若是160则返回值为1)。通过DisplayMetrics.density获取。 	
 
 
       densityDpi:  分辨率的值(如上160p屏幕返回值160)。通过DisplayMetrics.densityDpi获取。

	所以将dp转换px:
		1:  int px=(dp*density)+0.5f;			
 
 
		2:   int px=(dp*(densityDpi/160))+0.5f;
		
		向int转换时可能存在误差所以加上0.5 四舍五入能够更加精确。	
 
	

猜你喜欢

转载自blog.csdn.net/qq_36043263/article/details/78668571
今日推荐