Android基础知识之屏幕兼容模式

系统将应用UI显示为“邮票”式窗口。即,系统将应用的布局认定为适应普通尺寸手机(模拟320dp x 480dp的屏幕),窗口以外的屏幕部分显示为黑色背景。

该版本随安卓1.6的产生而出现,安卓1.6的设计就是仅适用于320dp x 480dp的原始尺寸。因为现在安卓1.5的设备很少使用了,几乎所有应用都在安卓1.6或更高的平台上开发,所以应该不会有版本一的屏幕兼任模式来适配更大屏幕。该版本差不多已经过时了。

http://developer.android.com/images/screens_support/compat-zoom-thumb.png

图1. 在安卓3.2平板电脑上,应用以屏幕兼任模式运行的情况。

http://developer.android.com/images/screens_support/compat-stretch-thumb.png

图2. 图1中的应用,在禁用屏幕兼任模式下的运行情况。

要禁用该版本的屏幕适配模式,你只需要设定android:minSdkVersionandroid:targetSdkVersion至 “4”或更高,或设置android:resizeable至“true”。

版本二(安卓3.2或更高)

系统按照在普通屏幕手机上的显示方式(大致模拟320dp x 480dp的屏幕)显示应用,然后进行放大,填满屏幕。实际上就是“拉大”应用布局,这通常会引起UI的伪迹或像素丢失。

该版本随着安卓3.2的产生而出现,在应用还没有实施支持多种屏幕Supporting Multiple Screens中所提及的技术时,该版本起到了进一步支持应用在最新设备上的正常显示的作用。

这样屏幕兼任模式就能一直启用,用户不可禁用。(下面的章节将会讨论如何声明支持大屏幕)。

http://developer.android.com/images/screens_support/compat-toggle.png

图3. 开关屏幕适配模式的弹出菜单(当前为禁用状态,仅正常调整)。

作为开发者,你应该掌握在何时该使用屏幕兼任模式。以下章节将告诉你,在安卓3.2或更高版本下,如何选择禁用或启用屏幕兼任模式来适配更大屏幕。

禁用屏幕兼任模式

========

如果你的应用最初是为低于3.0的版本开发的,而它能在更大屏幕上正常显示,那么你就应当禁用屏幕兼任模式,从而保证最佳用户体验。否则,用户也许会启用屏幕兼任模式,这样就会影响最佳的应用体验效果。

在默认下,当一下可选特性之一为true时,3.2或更高版本设备的屏幕兼任模式将可用:

· 将应用中android:minSdkVersionandroid:targetSdkVersion同时设为"10"或更低,并且使用元素,* 不要声明* 支持大屏。

· 将应用中 android:minSdkVersion或android:targetSdkVersion二者之一设定文"11"或更高,并且使用元素,* 声明其不支持* 大屏。

要想完全禁用屏幕兼任模式的用户选项并且移除系统栏上的图标,你可以:

  • ·最简单:*

在清单文件中,添加元素,指定android:xlargeScreens属性为“true”;

就这么简单。这样就声明了你的应用支持所有大屏幕尺寸,系统也会根据屏幕调整布局。不论你在属性中设定了什么值,它都会起作用。

  • ·简单,但有其他效果:*

在清单的元素中,设定android:targetSdkVersion为“11”或更高:

这种方法可声明应用支持安卓3.0,并且可以在更大屏幕(平板电脑等)上起作用。

最后

我的面试经验分享可能不会去罗列太多的具体题目,因为我依然认为面试经验中最宝贵的不是那一个个具体的题目或者具体的答案,而是结束面试时,那一刻你的感受以及多天之后你的回味~

很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,对此我整理了一些资料,需要的可以免费分享给大家

在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

【Android核心高级技术PDF文档,BAT大厂面试真题解析】

【算法合集】

【延伸Android必备知识点】

【Android部分高级架构视频学习资源】

**Android精讲视频领取学习后更加是如虎添翼!**进军BATJ大厂等(备战)!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!

,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值