经过几年的Android开发,我花了几个月想知道为什么我应该使用xml布局来制作我的AndroID应用程序的UI.
我理解MVC和实时图形界面设计的一部分.
如果我错了,请带我出于无知并原谅我,但是,我无法设置一个视图位置,确切地说,屏幕宽度为8%,宽度为屏幕宽度的70%,例如.
以这种方式创建UI并处理屏幕宽高比可确保应用程序在所有设备中按比例完全相同.
正如this post总结的那样,如果我们想要支持不同的屏幕,我们被告知要为我们应用的每个布局使用dip单位和一堆很好的xml文件. (如果我们必须使每个屏幕密度不同,为什么他们称之为密度无关?)
但是,即便如此,谷歌医生也会这样说
The ratio of dp-to-pixel will change with the screen density, but not necessarily in direct proportion.
而且不一定代替他们应该说大多数人从不关注不同数量的不同设备.根据您的项目,这可能是一个问题. (或者您希望您的客户在知道中国设备的人身上查看“略微分解”的用户界面)
我可以问相同的图像资源,但这可能是另一个问题,我用来将最高分辨率放在-nodpi上然后通过代码缩小到依赖于屏幕宽度的所需大小,而不是在所有分辨率下放置10.000个图像.
解决方法:
Creating the UI in that way and taking care of screen aspect ratio
ensures the app will look proportionally exactly the same in all
devices.
这就是Apple的方式,这也就是为什么当你在9.7英寸的iPad上打开一个带有漂亮视网膜显示屏的文件夹时,它只会显示9个图标.
平板电脑不仅仅是一部更大的手机.它真的不是.此外,iOS设备具有大致相同的宽高比,因此他们如何处理宽高比.
然而,在AndroID上,你不能只说你“照顾宽高比”问题,这个问题神奇地消失了.您最好的选择是使用AndroID最佳实践来正确处理宽高比.
话虽这么说,也不要过度.例如,您不需要使用所有8个密度桶.在尝试针对每种可能的场景进行优化之前,请查看官方dashboard以了解人们实际使用的设备.
此外,您无需一直听Google.例如,我相信Google会喜欢您翻译您的应用程序,以便它可以在全球范围内以超过68种不同的语言提供,但对Google来说有利的并不一定对您有利. AndroID实际上允许您选择要用于制作应用程序的工具.它们不会强迫您使用任何特定的.
总结以上是内存溢出为你收集整理的android – 我们为什么要使用xml布局?全部内容,希望文章能够帮你解决android – 我们为什么要使用xml布局?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)