2

到目前为止,我一直在 Visual Studios 2008 中使用 pda 模拟器(我使用的是 windows mobile 6.1 Professional sdk)。

所以我只是将我的大部分 GUI 组件拖放到表单中。在一个例子中,我制作了一个面板,然后在这个面板中我动态地在其中生成了带有某些位置位置的标签。

然后我把它放在我的 Hp PAQ 110 Classic pda 上,它看起来很好,一切都很好。然后我在看模拟器,其中一个叫做专业广场。所以我决定运行它,当它运行我的程序时,它看起来像垃圾。

我缺少标签,缺少控件,而且看起来很糟糕。

我想也许它会为我做一些调整大小,但它似乎要么做得很糟糕,要么根本不做。

那么,如何制作一个适用于所有手机(或至少绝大多数手机)的 GUI。

有X种手机吗?就像模拟器模拟 pda 一样,它可以在我的 HP 上运行,所以我假设所有窗口移动设备 pda 都具有相同的屏幕尺寸。

那么下一个问题是如何使控件从一个设备正确定位到另一个设备?我听说有人使用 XML 文件,这些文件具有他们调用的所有位置位置、大小等,我猜基本上是根据 XML 中的信息动态生成 GUI。

但是我找不到任何示例 XML 文件的外观,如何检测它是什么电话类型,以便我可以为该电话调用文件的正确节点。

我不确定是否还有其他方法,但这似乎比每个方法的一组 GUI 表单更好。

还建议将大多数内容放在面板中,这样即使内容更大,您至少可以打开自动滚动。

谢谢

4

3 回答 3

3

我花了很多时间研究这个问题的不同解决方案(也请参阅我的问题here)并最终采用了一种务实的方法 - 一致地使用对接。您必须将自己限制在最小公分母上,即您想要支持的最低分辨率,就您可以在屏幕上容纳多少而言。好消息是网格总是使用整个可用空间,我的表单在所有设备上都能正确流动,而且屏幕看起来不像坏了。

于 2009-12-08T02:49:59.373 回答
0

这远非一件容易的事。您可以遵循一些指导原则,但唯一可行的方法是始终以所有可能的屏幕分辨率测试用户界面。模拟器是一个很好的开始方式,但是最好有一个实际的设备。字体大小和文本可读性等某些内容只能在真实设备中进行测试。所以,这些是我的建议:

  • 尝试使用停靠来定位控件。
  • 您需要能够正确处理方向更改。使用对接会有所帮助,但您始终需要在不同的屏幕分辨率下进行测试。
  • 在某些时候,您会发现检测屏幕尺寸和动态调整用户界面是不可避免的。我不同意你应该限制自己只显示最小屏幕可以容纳的内容。专业的应用程序应该适应可用的屏幕尺寸并充分利用它。
  • 构建您的应用程序,以便轻松支持新的屏幕分辨率。使主用户界面代码屏幕大小不可知。让它从配置类中获取有关动态调整大小的所有信息 - 定位。这样,您只需增强代码中的单个项目即可支持新的屏幕分辨率。

而且当然:

  • 测试所有可能的屏幕分辨率。即使对用户界面进行了微小的更改,也要重新测试。
于 2009-12-09T09:06:15.370 回答
0

尽管上面的帖子很有帮助,但我发现这个视频解决了我的所有问题,而且您不必为最低屏幕进行开发。

http://www.microsoft.com/events/series/detail/webcastdetails.aspx?seriesid=86&webcastid=5112

于 2009-12-13T19:33:11.107 回答