クロージャーからビューを作成できるパラメータ
@ViewBuilderを使用すると、複数のビューをクロージャーを使って作成できる
クロージャーを使って抽象化しているため、使う人が自由に実装できる
使い方
appleのリファレンスから引用
// MenuItemsは、Viewプロトコルに準拠していること
// Viewプロトコルに準拠していれば、@ViewBuilderで複数のビューを返却できる
func contextMenu<MenuItems: View>(
// メニュー項目は、使う人が自由に実装できる
@ViewBuilder menuItems: () -> MenuItems
) -> some View
// 使用例
myView.contextMenu {
// メニュー項目を設定
Text("Cut")
Text("Copy")
Text("Paste")
if isSymbol {
Text("Jump to Definition")
}
}


コメント