[Video Summary] Ch. 1.7 Getting SwiftUI Layout Right Part 3 - Divider, GeometryReader, & Group (You Are Awesome app)
Mô tả nhanh
Video này trình bày về cách sử dụng Divider view để tạo đường kẻ phân cách trong giao diện, tuỳ chỉnh Divider với Rectangle shape và GeometryReader để lấy kích thước thiết bị, cùng với cách dùng Group để vượt giới hạn 10 view con trong SwiftUI.
Video
Mô tả chi tiết
Video này trình bày về cách sử dụng Divider view để tạo đường kẻ phân cách trong giao diện, tuỳ chỉnh Divider với Rectangle shape và GeometryReader để lấy kích thước thiết bị, cùng với cách dùng Group để vượt giới hạn 10 view con trong SwiftUI.
Nội dung chính:
- Divider View:
- Divider là view dùng để tạo đường kẻ mờ giúp phân tách nội dung.
- Trong VStack, Divider tạo đường kẻ ngang. Ngược lại, trong HStack, Divider tạo đường kẻ dọc.
- Có thể thêm padding cho divider để điều chỉnh khoảng cách so với các view xung quanh.
- Có thể thay đổi kích thước của Divider bằng thuộc tính
frame
. - Có thể thay đổi màu của divider bằng thuộc tính
background
, cần đặt modifier này ngay sauDivider()
, trướcframe
.
- Tùy chỉnh Divider bằng Rectangle Shape:
- Sử dụng
Rectangle()
để tạo hình chữ nhật, sau đó tùy chỉnh màu sắc bằng.fill()
và kích thước bằng.frame()
. - Rectangle cho phép tùy biến cao hơn so với Divider mặc định.
- Sử dụng
- GeometryReader:
- GeometryReader là một view đặc biệt, cho phép truy cập vào kích thước và tọa độ của view mà nó bao bọc.
- Sử dụng
GeometryReader
bao bọc ngoài cùng view hiện tại (VStack) để có được kích thước của thiết bị. - Truyền vào một biến (ví dụ:
geometry
) vào closure của GeometryReader để có thể đọc các thông số kích thước. - Sử dụng
geometry.size.width
để lấy chiều rộng của thiết bị và dùng để tùy chỉnh kích thước tương đối của view khác.
- Group:
- SwiftUI có giới hạn 10 view con trong một stack hoặc group.
- Để vượt qua giới hạn này, có thể đặt các view vào trong một
Group
. - Các view bên trong group trở thành con của group, không phải của stack.
- Có thể áp dụng modifier lên group, modifier này sẽ ảnh hưởng đến tất cả view con bên trong.
Qua video này, người học có thể hiểu rõ hơn về cách tùy chỉnh layout trong SwiftUI, cũng như cách sử dụng các view đặc biệt như Divider, GeometryReader và Group.
Chúc bạn học tập hiệu quả!