10. Медленный GalleryView со списком картин

Экран выставки картин работает медленно и прерывисто. Нужно указать проблемы в этом коде и исправить его так, чтобы этих проблем не осталось.

enum PaintingType: Identifiable { case masterpiece case contemporary case sketch var id: UUID { UUID() } } struct Exhibition { var title: String var description: String var paintings: [PaintingType] = [] } struct TitleView: View { let exhibition: Exhibition var body: some View { Text(exhibition.title) } } struct PaintingView: View { var painting: PaintingType var body: some View { // Интерфейс картины } } struct GalleryView: View { @State var exhibition: Exhibition var body: some View { ScrollView { VStack { TitleView(exhibition: exhibition) ForEach(exhibition.paintings) { painting in if painting != .sketch { PaintingView(painting: painting) } } TextField("Название", text: $exhibition.title) Text(exhibition.description) } } } }

Дополнительные вопросы

1. Если view нужны несколько полей, например четыре, как передать их?

Темы

Компании