Skip to content

动态地生成预览

接下来,向 LandmarkList_Previews 添加代码,以呈现不同设备尺寸下的列表视图预览。默认情况下,预览会以当前的 scheme 中设备的大小进行渲染。我们可以通过调用 previewDevice(_:) 修饰符来改变预览设备。

第 1 步

首先,改变当前的列表预览,使其以 iPhone SE 的尺寸呈现。

你也可以在 Xcode 中选择其他的设备进行预览。

第 2 步

在 list 预览中用设备名称数组作为数据,将 LandmarkList 嵌入到 ForEach 实例中。

ForEach 以与 list 相同的方式对集合进行操作,这样我们就可以在任何可以使用子视图的地方使用它,比如 stackslistsgroups 等。当数据元素像这里使用的字符串一样是简单的值类型时,我们可以使用 \.self 作为标识符的 key path

第 3 步

使用 previewDisplayName(_:) 修饰符把设备名称作为 labels 添加到预览中。。

第 4 步

我们可以尝试添加不同的设备来对比视图的渲染。

注意

同时显示的设备越多,预览会相应的变得卡顿。

至此,构建列表和导航完成。

课后问答

检验一下你是否真的学会了
动态地生成预览 has loaded