iOS

SwiftUI Advanced

Layout protocol, preference keys, GeometryReader, matchedGeometryEffect, ViewBuilder

22 คำถามสัมภาษณ์·
Senior
1

What is the Layout protocol in SwiftUI?

คำตอบ

The Layout protocol enables creating custom view containers by defining how subviews are positioned and sized. It replaces manual GeometryReader approaches for complex layouts, offering a declarative and composable API for building sophisticated view arrangements.

2

How to implement a custom layout by conforming to the Layout protocol?

คำตอบ

Implementing Layout requires defining two main methods: sizeThatFits that returns the container's total size, and placeSubviews that positions each subview using placement proposals. These methods work together to create a coherent and predictable layout system.

3

What is the main advantage of using the Layout protocol over GeometryReader?

คำตอบ

The Layout protocol offers a composable and reusable approach for layouts, whereas GeometryReader often requires imperative code in each view. Layout separates placement logic from rendering logic, improving testability and maintainability of components.

4

How to pass configuration parameters to a custom layout?

5

When to use GeometryReader rather than the Layout protocol?

+19 คำถามสัมภาษณ์

เชี่ยวชาญ iOS สำหรับการสัมภาษณ์ครั้งถัดไป

เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์

เริ่มใช้ฟรี