我想知道检测(和处理)非常不同的屏幕尺寸的最佳方法是什么。
为什么我这么问:我有一个带有 GridView (和不同项目)的 Metro(Win8 UI)风格的应用程序,请参阅模型。对于每个类别,我都选择了几个在第一页上显示的类别。如果屏幕尺寸(分辨率)很小(例如在平板电脑上),我只想显示每个类别 3-4 个项目。在大屏幕上我大概可以显示 10 个项目。否则就会有很多未使用的空白空间。 (在详细信息页面上,这没有问题,因为我显示了所有项目,它会自动调整到更大的屏幕尺寸。)
这也是 Steven Sinofsky(微软)的意图,正如他在他的 BlogPost 中所写的那样。 .
这是我的应用程序在小屏幕上的模型。
感谢您的提示!
最佳答案
您可能可以在加载页面时检查页面中的 this.Frame.ActualWidth
和 this.Frame.ActualHeight
的值,以计算出大致有多少个项目你想展示。不过,请注意缩放 - 这可能会使您的计算变得更加复杂,但也不会过于复杂。由于您可能应该知道 GridView 中元素的大小,因此您应该能够计算出有多少元素适合您拥有的屏幕区域。那么这只是将适当数量的项目放入 View 模型中,然后将其绑定(bind)到 View 的情况。
关于gridview - 如何在 WinRT-Apps 中检测和处理截然不同的屏幕尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12002213/