-1

当我们为 Windows 10 构建通用应用程序时,为了支持多种分辨率,我们可以使用自适应触发器

在这种情况下,对于每个视觉状态,使用单独的布局。如果我们要采用 3 种尺寸,则必须为每个布局创建,因此对于大多数控件来说,将有多个重复项,这些重复项在适当的视觉状态下被隐藏并变为可见。

所有这些控件都将被加载到内存中并浪费 RAM,这对于低内存手机(如 lumia 620)来说可能是危险的。

在这种情况下使用单独的视图是正确的解决方案吗?

更新

如果有人需要,这里有关于元素布局重新排序形式wintellect(AdaptiveTrigger,改变网格中的元素位置)和Galasoft(AdaptiveTrigger,RelativePanel)的很好且非常简单的文章。

4

1 回答 1

1

Windows 10 Xaml 引入了一个属性 x:DeferLoadingStrategy 以将控件标记为仅在需要时加载。这将允许您在 Xaml 中包含所有控件,而无需将它们加载到内存中,除非它们被实际使用。在设备可能仅实际使用一种尺寸(或两种用于纵向/横向)的移动案例中,其他尺寸的布局将永远不会加载。

对于您使用相同控件但位置略有不同的情况,我会考虑移动它们(可能使用 RelativePanel),正如 Jon Stødle 在评论中所建议的那样。

如果有更大的更改,那么我会在同一个文件或使用单独的 Xaml 中查看单独的布局(就像您正在做的那样),但是对于简单的位置更改,这可能是矫枉过正的。

于 2015-08-11T17:31:49.227 回答