2013-04-04 120 views
1

我正在使用有很多ImageButtons,LabelFieldsMessageBoxes的BlackBerry应用程序。在一个屏幕尺寸上看起来是完美的,在另一个屏幕上看起来很乱。例如,与LabelFields整齐排列的Vertical Field Managers在大屏幕上左右对齐。覆盖屏幕宽度的图像在较大的屏幕上显示得太小。是否有一些机制可以根据屏幕大小自动对齐和动态更改图像。任何想法和文件都可以在这方面提供帮助?自动调整对齐到屏幕尺寸

+0

使用if if条件。在每个屏幕的内部,根据屏幕尺寸分别设置对齐方式。如果(屏幕320x240) - 相应地对齐字段。否则,如果(屏幕360x480),然后重新排列对齐。否则,如果....等等。 – Signare 2013-04-04 13:25:21

+1

如果你设法把事情集中起来,他们应该在每个屏幕上都看起来很好。可能你正在使用一些肮脏的技巧来完成这项工作(“与标签字段对齐”听起来很可怕)。而关于这些图像,要么缩放它们,要么为每个可能的屏幕尺寸提供一组图像(是的,这是一大堆工作)。如果您更习惯于Web开发,那么您也可以考虑切换到WebWorks。 – 2013-04-05 09:04:08

回答

2

这里有一些建议,让屏幕上看起来舒服的几乎所有设备:

  1. 使用更少的图像。如果您必须使用图像,请使用至少3-4个不同的屏幕尺寸。例如,如果您需要将图像作为屏幕标题,请使用宽度为320px,480px和640px的图像。根据屏幕宽度加载图像。

  2. 请勿使用像素测量。改用点测量。大多数设备在物理尺寸方面相似,但它们在像素密度方面存在巨大差异。使用此功能,您可以在曲线(320x240),粗体2(480x360)和粗体4(640x480)上显示完全相同的屏幕。如果您注意到,它们具有相同的纵横比和相似的物理尺寸。

  3. 请勿硬编码位置。而是使用FIELD_HCENTER和DRAW_HCENTER等字段。

  4. 请勿使用固定像素高度的字体。改为使用固定点高度。

  5. 如果使用自定义字段,请确保它们可以根据设备和像素密度自动扩展。

+0

+1。这是[帮助#1链接](http://stackoverflow.com/a/11551148/119114)和[帮助#2/4]链接(http://stackoverflow.com/a/3497056/119114) – Nate 2013-04-11 20:57:58