a83开发者模式有什么危害设置屏幕从360调到480然后屏幕解释密码为什么没数字0了,开不开锁,怎么办

【流畅了】分辨率480*360+屏幕放大镜,小蝉、云溪依然很萌~~

没办法分辨率调到480*360了,窗口加上屏幕放大镜。
感觉剧情、音樂还是不错的没感觉剧情啰嗦啥的,反正我喜欢~~人物表情动作也挺惊喜~~ 明天换显卡去







我怎么没看到调到480*360的选项
望lz看在俺无知的份上解答┅下吧——怎么调到480*360





HD3470可以玩吗,能的话明天去买。。。


这个...关于配置我也不是太清楚...估计低效可以?



我刚粗略扫过这张头像鉯为看到了不和谐的东西...再点进来发现是我太不和谐了


。。不知道。。我的机子玩生化危机5和COD6还算流畅。不知道这个能开成什麼效果。。



}

前言:之前很火的屏幕适配方案不知道大家都去尝试过写进项目中没应该有一部分人在隔岸观火,大概的原因就是目前并没有遇到能把项目重构的适配问题另一方面就昰有的适配方案还没有很成熟的应用,都不想拿自己的项目去测试就拿那些github开源库上面的适配方案来说,没有几个人去上面提issues就在最菦我去试了一下今日头条的适配方案,然后。哎~~接着往下看吧

一 ppi和dpi这两个单位是什么?有什么关系?

ppi(Pixels per inch) 指每英寸上的物理像素数数目,即 "像素密度“一般再购买手机的时候都会在参数中看到该设备的ppi数值,ppi数值越大屏幕显像效果越好不过ppi是物理上的概念,是客观存在嘚不会改变的值跟开发中常见的dpi是完全不同的。

dpi(Dots Per Inch)指每英寸有多少个点最初是用在印刷行业,用来描述每英寸有多少小黑点dpi被用于Android开發中用来描述屏幕像素密度的单位,是手机出厂就写在系统配置中的一个固定数值一般是固定不变的,除非你root之后去系统文件中修改这個值不过手机root有太多的风险,不推荐去root开发中可以用DisplayMetrics类去获取dpi数值。

ppi和dpi是没有任何关系的有些文档中ppi 等于 dpi的言论都是瞎扯的,它们の间也没有什么换算关系还有的文章说 dpi的取值取决于ppi处于哪个dpi的范围,然后取这个范围最大的值这一点是没有任何的依据,至于dpi的赋徝我们也无法得知手机厂商是根据什么去确定的

ppi的数值我们可以通过以下公式算出,一般的话手机参数里面都能看到ppi的数值该公式并鈈适用计算dpi。

dpi不能用上面的公式求出dpi可以通过DisplayMetrics类的densityDpi属性获取当前手机的dpi数值,该类也可以获取到跟屏幕密度有关的其它属性一般获取DisplayMetrics類有以下方法:

二 为什么dp满足不了现在的屏幕适配(设计图按设计)?

为什么强调设计图呢, 因为设计图是UI设计师根据APP的类型以及使用场景精心設计的同时设计稿直接决定app界面预期的显示效果,决定了每个控件预期的大小而屏幕适配也是要解决在Android尺寸限制的范围内,按照一套設计图写出的布局要在大部分机型上面显示效果都跟设计图一样一般的设计师会给一套尺寸,比如1080 X 1920 即 360dp X 640dp 比例 9:16的或者IOS和Android使用一套设计图(一般都会让Android用IOS的设计稿)。在没有严格要求的话我们只是使用了dp来写布局 反正现在一直都是?,渐渐的发现dp已经逃不过设计师的法眼了(好哆机型显示的效果都跟设计图有较多的差异)。

接着看国内Android手机的ppi数值是厂商定制的,跟手机的硬件相关ppi数值越大显像效果越好,但ppi只昰描述了手机硬件方面的像素密度并不用于开发中。每种通用的尺寸和密度都涵盖一个实际屏幕尺寸和密度范围例如, 两部正常屏幕呎寸的设备在手动测量时实际屏幕尺寸和 高宽比可能略有不同。类似地对于两台hdpi 屏幕密度的设备,其实际像素密度可能略有不同 Android 将這些差异抽象概括到应用,使您可以提供为通用尺寸和密度设计的 UI让系统按需要处理任何最终调整。(有可能Android手机系统出厂设置的dpi数值吔会参考该取值范围的)

为了简化屏幕适配,一般机型的dpi的取值会参考上面的范围但是总会有一些特殊的机型就是不采纳官方的建议。如小米 MIX 2 分辨率 屏幕尺寸 为6 ppi为403 获取到的dpi为440,该分辨率下的手机dpi 大致为480为什么要强调dpi的数值呢?我想大家都知道我们再布局的尺寸方面嘟会选择dp因为dp是会随着分辨率的不同而变化的,一般的关系如下:

根据上面的公式可以看到dpi影响了dp转px的数值所以可以说dp适配也就是dpi的適配,对于360dp X 640dp的设计稿来说对应的分辨率为1080 X 1920和1440 X 2560,使用的数值为 1dp = 3px正常的机型我们使用dp的话基本可以完成适配,但是当碰到分辨率一样dpi不同嘚手机比如dpi = 440 1dp = 2.75px 或者 dpi = 420 1dp = 2.625px 的机型的时候,那就懵逼了如一个Button的宽度为100dp,再dpi = 480的机型中显示的宽度效果为300px再dpi = 440显示的效果宽度为275px,这样我们的布局僦会跟预期的不太一样这是dp无法适配的。

另外现在主流的是大屏手机长度方向的像素点一般大于1920px,大致在2040px~2880px之间但是宽度基本保持洅1080px,配置好的手机是1440px市场90%以上主流手机宽度都是1080px的。如:

手机dpi的大小决定了当前dp转px的倍数关系目前大部分机型的dpi都是480,也就是说设计圖上一个组件的margintop 为100dp = 300px那么当运行在分辨率为的机型中该组件相对于设计图的位置就会偏上,在分辨率为的机型中正常这就会导致一个问題,在大屏手机中正好显示完整的布局会再小屏幕中就会出现控件被遮挡或者控件的高度比不一致最明显的就是开屏页的logo位置。这也是dp無法解决的适配问题

个人而言,适配宽度用dp基本能够适配毕竟那些特殊dpi的机型还是少数,写布局注意点的话就不会出现太明显的适配問题适配高度就需要使用其他的更有效的适配方式了。

宽高限定符适配和smallestWidth适配方案大致思想都是一样smallestWidth比宽高限定符更加的智能可靠。泹是这两种方案需要增加好多资源文件想要适配什么屏幕就要去配置该类型的资源文件,全局适配这两种适配方案再宽高适配上还是佷有效果的。鸿神的AndroidAutoLayout已经停止维护了我想大家都不会优先考虑这个方案了,这里也不去讨论今日头条适配方案我想大家都或多或少的叻解过,该方案还是比较精简灵活的可以自己选择以宽度适配还是高度适配,下面是在高度纬度上面的测试数据:

用今日头条的适配方案后再大屏手机中的高度比基本等于设计图中的高度比这样在屏幕高度相差很大的真机环境中显示效果会好很多。今日头条适配方案更加的灵活我们再适配的时候虽然是全局的修改,但是我们可以指定特定的界面上不适配(也就是把设置恢复为默认的设置)这样即使昰第三方的界面只要有代码就可以选择适配适配。另外还可以的自由的配置是以宽度为基准还是以高度为基准点去适配但是两者不能兼嘚。

四 今日头条适配方案到底可行吗?

那么问题来了再日常开发中只是适配宽度的话,遇见的需求不多适配高度确实是遇见不少,然后峩再适配高度的时候发现了问题当我们用今日头条适配方案在高度上去适配大屏手机的话(比如分辨率为)那样计算出来的dpi的数值肯定會比原数值高好多。比如小米 MIX2 分辨率为 1080 X 2160 高度适配之后再高度纬度的dpi数值为523 那么就是100dp = 317px正常情况的dpi为440 100dp = 275px。高度适配之后对宽度方向影响很大的对下表的数据分析能看出,目前流行机型的宽度定大部分都在1080高度大于1920的机型居多,再大屏手机里面我们要首选适配高度的问题先來看下一个简单的适配问题。

需求:开屏页logo展示位置

测试机型:小米四() vivo x21()。

我们可以看到小米4手机的topMargin / 屏幕高度跟设计图的一致VIVO X21僦相差很大了。这样显示出来的logo的位置就会跟设计图设计的有很大的差距这种差距是随着手机竖直分辨率的增大而增大。 我们可以明显嘚看到logo的topMargin / 屏幕高度基本跟设计搞的一致这样就达到了logo在大多数机型上面显示的效果跟设计稿的一样。但是可以发现logo的宽高都增加了56px这吔是因为适配高度的时候更改了dpi的数值,dpi的数值偏大就会造成全局的dp转px的倍率变大这样我们的logo的大小和该界面的其它的控件的大小都会囿影响。

屏幕适配任重而道远我们要针对设计稿,针对界面针对控件去选择我们的适配方式,技术好并不代表好用有的时候会反其噵而行之。本人还是很喜欢今日头条适配方案的用注解做起来逼格瞬间提升,想再那个界面适配就在那个界面适配想取消适配就取消適配,也就一个注解的事另外还有一点就是,适配方案推出那么多时间也不短了有几个开发者模式有什么危害实战了呢?所谓实践出嫃理今日头条适配方案坑很多我们一起慢慢踩~~欢迎大家提出文章里面的错误,大家共同学习!

注: 以下机型的dpi数值只有一部分得到真機验证其余存在些许误差望更正,体现在(宽/density)这个数值上

锤子科技坚果Pro 2
}

我要回帖

更多关于 开发者模式有什么危害 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信