iOS ๐/SwiftUI
ViewBuilder
yongmin.Lee
2022. 11. 10. 11:59
ViewBuilder
- ์ ์ : ํด๋ก์ ๋ก ๋ค์์ ์์ ๋ทฐ๋ค์ ๋ง๋ค์ ์๊ฒํด์ฃผ๋ parameter attribute
- buildBlock ์ด๋ผ๋ ํ์ ๋ฉ์๋๋ฅผ ํตํด์ ์์ ๋ทฐ๋ก ์์ฑ๋ ๋จ์ผ ๋ทฐ๋ฅผ ์ ๋ฌ
- 2๊ฐ ์ด์์ ๋ทฐ์ผ๋๋ TupleView ๋ผ๋ ํ์ ์ ๋ฆฌํด
- body ํ๋กํผํฐ๋ ์์์ ์ผ๋ก @ViewBuilder๋ก ์ ์ธ๋์ด์๋ค
๋ค์๊ณผ ๊ฐ์ ํจ์์ ํ๋ผ๋ฏธํฐ์
func contextMenu<MenuItems: View>(
menuItems: () -> MenuItems
) -> some 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")
}
}
์ฐธ๊ณ ์๋ฃ
https://developer.apple.com/documentation/swiftui/viewbuilder