如何指定屏幕元素(按钮,标签,图像等)按像素或相对位置出现在屏幕上的特定位置?例如,以下假设情况:
我已经在GUI生成器和布局管理器上观看了几个教程视频,并通读了开发人员指南的多个部分,但是看不到如何执行这些看似基本的任务。
您可以使用从自定义布局管理器到少量边距设置的工具来完成所有这些任务,但是其中大多数期望是“错误的”。
在分辨率/密度可能会发生根本变化的移动设备中,基于像素甚至倾角放置东西是没有意义的,例如,您的应用需要在iPhone 3gs 320x480或480x320上看起来不错(这会使选项1无关紧要),然后它需要在iPad Pro 2732x2048上看起来不错,并且密度差为3倍,这意味着在iPad Pro上任何标准像素看起来都小3倍!
您需要考虑距离(而不是像素)的倾角(毫米)。然后,您需要改变对定位的看法,以逻辑而非绝对的术语进行思考,例如居中,左侧等词。
关于您的观点:
您可以通过多种方式执行此操作,但所有方法都不正确,因为它们会在各种设备上损坏。您可以按照开发人员指南中的说明实施自己的布局管理器。您也可以仅使用以像素/毫米为单位的边距将组件移动到适当位置。
答案与1相同,因为边距支持百分比,毫米和像素。要确定宽度/高度,只需重写该calcPreferredSize()
方法,但这又是一个有问题的概念,因为您可能会与密度显着改变图像/字体大小的事实发生冲突...
这是对余量的有效使用,尽管我会使用3-4毫米,以便在所有设备上看起来都是一致的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句