2012-11-20 113 views
4

我已将WP7应用程序迁移到WP8平台。 现在,如果我开始在WXGA Emulator中调试我的应用程序(屏幕尺寸应该是768×1280)。我有 Host.Content.ActualWidth=480Host.Content.ActualHeight=800WP8仿真器屏幕尺寸

这是正常行为吗?为什么WXGA模拟器的屏幕尺寸为480x800?

回答

13

是的,这就是WP8应该如何工作。

WP8多分辨率的禅宗是让开发人员尽可能少的工作来解决不同的分辨率。其他平台将开发人员的所有艰苦工作转储为使用不同分辨率的物理像素。相反,WP8使用480x800和480x853的逻辑像素来说明不同的分辨率。

应用程序开发人员确实只需要做两件事。首先是使用网格相对设计(而不是Canvas绝对设计)来帮助480x853逻辑分辨率。其次是确保使用适合不同分辨率的媒体资产。例如,您不想在低分辨率屏幕上播放720p视频,也不想在高清分辨率屏幕上展开240像素宽的图像。

我写了一篇关于这个话题广泛,包括代码示例和如何相关的API的行为@http://www.developer.nokia.com/Community/Wiki/What%27s_new_in_Windows_Phone_8#Multi_resolution

WP8 Multi-res APIs

+1

我在诺基亚论坛上看过你的文章,它很棒,你可以请更新一点,因为有新的设备可用诺基亚Lumia 1520的1080分辨率,我不确定屏幕尺寸的开发者会可以在代码中获取?就像在720P中,我们得到了具有比例因子的480 * 853。 –

+0

我不知道它是新的区分大小写,%27(不能,是吧?)还是www,但链接被转发到首页,[这是作品](http:// developer .nokia.com /社区/维基/ What's_new_in_Windows_Phone_8#多分辨)。去搞清楚。 – ruffin

4

这是预期的行为,应用程序会自动放大并且可悲地无法使用原始分辨率。它在720p模拟器/手机中的工作方式类似 - 宽度也是480,高度为853像素。

+0

据我所知WVGA,WXGA和720还在做用实际分辨率,而1080真的upscales 720p的图像。听起来很奇怪,但这就是我读的书。 – ecth