首页 > 其他分享 >打Log 轻松理解getDimension getDimensionPixelOffset getDimensionPixelSize

打Log 轻松理解getDimension getDimensionPixelOffset getDimensionPixelSize

时间:2022-11-24 11:34:11浏览次数:58  
标签:dimen Log int margin getDimensionPixelSize getDimension getDimensionPixelOffset 


<dimen name="margin_dp">3dp</dimen>
<dimen name="margin_px">3px</dimen>
<dimen name="margin_sp">3sp</dimen>




DisplayMetrics dd = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dd);
Log.i(TAG,"Phone size:"+dd.widthPixels+"X"+dd.heightPixels);
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)
Log.i(TAG,"Phone size:"+dd.widthPixels+"X"+dd.heightPixels+",密度比:"+metric.density+",密度值dpi:"+metric.densityDpi);
float a1=getResources().getDimension(R.dimen.margin_dp);
int a2=getResources().getDimensionPixelOffset(R.dimen.margin_dp);
int a3=getResources().getDimensionPixelSize(R.dimen.margin_dp);
Log.i(TAG, "dp_value_read= "+"a:"+"getDimension"+a1+", getDimensionPixelOffset="+a2+",getDimensionPixelSize="+a3);

float b1=getResources().getDimension(R.dimen.margin_px);
int b2=getResources().getDimensionPixelOffset(R.dimen.margin_px);
int b3=getResources().getDimensionPixelSize(R.dimen.margin_px);
Log.i(TAG, "px_value_read= "+"a:"+"getDimension"+b1+", getDimensionPixelOffset="+b2+",getDimensionPixelSize="+b3);


float c1=getResources().getDimension(R.dimen.margin_sp);
int c2=getResources().getDimensionPixelOffset(R.dimen.margin_sp);
int c3=getResources().getDimensionPixelSize(R.dimen.margin_sp);
Log.i(TAG, "sp_value_read= "+"a:"+"getDimension"+c1+", getDimensionPixelOffset="+c2+",getDimensionPixelSize="+c1);
/*
小米4c xxhdpi適配 1920X1080实际打印值
space.qssq.testkey I/MainActivity: Phone size:1920X1080,密度比:3.0,密度值dpi:480\dp_value_read= a:getDimension9.0, getDimensionPixelOffset=9,getDimensionPixelSize=9
\MainActivity: px_value_read= a:getDimension3.0, getDimensionPixelOffset=3,getDimensionPixelSize=3
\ainActivity: sp_value_read= a:getDimension9.0, getDimensionPixelOffset=9,getDimensionPixelSize=9.0
*/
}

标签:dimen,Log,int,margin,getDimensionPixelSize,getDimension,getDimensionPixelOffset,
From: https://blog.51cto.com/u_15458814/5882968

相关文章

  • DialogPreference的子类输入框弹出的样式修改
    说到这个真的苦逼,我最后悔的是使用官方主题的样式进行修改,然后尝试让变色变成文字颜色,结果是很多地方的文字看不到了,各种各样的样式都要进行修改,整个app,总是有很多地方文......
  • 【FPGA & Verilog】手把手教你实现一个DDS信号发生器
    信号发⽣器的设计与实现1.输出波形:⽅波(占空⽐50%)、锯⻮波、三⻆波、脉冲信号(占空⽐连续可调)、正弦波、任意波等2.输出频率:100KHz3.波形选择:使⽤拨码开关选择 思路......
  • 学fpga(从verilog到hls)
            hls,全称为highlevelsynthesis。也就是说从更高一级的语言来完成电路的综合。从前,编写fpga只有一个方法,都是编写verilog类似的硬件语言。但是如何用c、c++......
  • 学fpga(在线verilog编程)
        很多编程不方便的同学,可以利用在线工具进行编程。比如现在,https://hdlbits.01xz.net/wiki/Main_Page这个网站就非常不错,适合暂时还没有安装quartus、vivado的同......
  • easylogging++的那些事(三)总体设计
    目录一、日志框架的需求分析二、easylogging++的需求分析功能性需求1、日志内容:多种日志类型的支持2、日志格式的管理:日志格式的配置3、日志输出地的管理非功能性需求1......
  • easylogging++的那些事(二)宏定义
    上一篇文章我们简要介绍了easylogging++的主要功能。easylogging++中有很多特性是通过宏来控制的,今天我们就来聊聊这些宏:debug输出流宏定义ELPP_INTERNAL_DEBUGGING......
  • 小程序开发,uni.login的时候,获取code的时候出现the code is a mock one
    小程序开发,uni.login的时候,获取code的时候出现thecodeisamockone  原因很简单,你没有修改你小程序的APPID,当前还是处于测试阶段 ......
  • UOJ771 科考工作 —— 一个很妙的nlogn做法
    UOJ771(UERB科考工作)\(n\)为质数,给\(2n-1\)个数,找出一个大小为\(n\)的集合使得和为\(n\)的倍数。很神奇。如果有绝对众数,那么输出\(n\)个绝对众数就做......
  • ASP.NET Core教程-Logging(日志)
    更新记录转载请注明出处:2022年11月23日发布。2022年11月20日从笔记迁移到博客。日志(Logging)基础日志说明日志并不会为应用程序增加实质性的功能,常用于记录错误信......
  • .netcore3.1使用log4net/nlog记录日志
    //.netcore使用log4net替换ILooger实现services.AddLogging(logBuilder=>{logBuilder.ClearProviders();log......