SwiftUI, framework mới nhất của Apple đã làm mưa làm gió đối với thế giới lập trình iOS chuyên nghiệp. Nếu bạn đã bắt đầu làm việc với SwiftUI hoặc sử dụng nó cho các dự án của mình, tám thư viện này có thể giúp ích cho bạn. Hầu hết các thư viện đều có sẵn thông qua Swift Package Manager.

1. QGrid

QGrid là một phần còn thiếu của SwiftUI collection view. Nó sử dụng cách tiếp cận tương tự như chế độ xem danh sách của SwiftUI, bằng cách tính toán các ô theo yêu cầu từ collection cơ bản của dữ liệu được xác định.

 

https://github.com/Q-Mobile/QGrid

2. SwiftUIX: Tiện ích mở rộng cho Thư viện SwiftUI tiêu chuẩn

SwiftUIX cố gắng hoàn thiện các hạn chế của framwork SwiftUI, cung cấp các thành phần, tiện ích mở rộng và tiện ích phong phú để bổ sung cho thư viện chuẩn. 

https://github.com/SwiftUIX/SwiftUIX

3. SwiftUICharts

Đây là một trong những thư viện yêu thích của tôi. Một Swift package dùng để hiển thị biểu đồ một cách dễ dàng.

SwiftUI chart hỗ trợ:

  • Biểu đồ tuyến tính
  • Biểu đồ cột 
  • Biểu đồ tròn

https://github.com/AppPear/ChartView

4. WaterfallGrid

Là một layout view hình thác đổ dành cho SwiftUI.

Đặc điểm: 

  • Nội dung grid không đều
  • Số lượng cột hiển thị trên mỗi hướng thiết bị khác nhau 
  • Khoảng cách và grid padding đều tùy chỉnh 
  • Hướng cuộn có thể ngang hoặc dọc
  • Các item update có hiệu ứng chuyển động 

https://github.com/paololeonardi/WaterfallGrid

5. Concentric Onboarding

Là thư viện iOS cho các thao tác nhấn walk through hoặc onboarding flow được viết bằng SwiftUI. 

https://github.com/exyte/ConcentricOnboarding

6. Swift Sunburst Diagram

Sunburst Diagram là một thư viện được viết bằng SwiftUI, dễ dàng hiển thị các sơ đồ cho trước cho một cây các đối tượng, tương tự như biểu đồ vòng tròn (ring chart) , biểu đồ sunburst và biểu đồ hình tròn đa cấp độ (multilevel pie chart).

Đặc điểm: 

  • Cấu hình với một cây các đối tượng nút (node). 
  • Các nút có nhãn tùy chọn hiển thị ( hình ảnh và văn bản) 
  • Reactive UI với các cập nhật chuyển động. 
  • Tùy chọn cấu hình các nút có giá trị (bốn chế độ rendering khác nhau)
  • Số lượng các layer (vòng tròn) hỗ trợ vô hạn
  • Được tùy chọn cấu hình lề, kích thước, sắp xếp và vị trí ban đầu của các vòng cung. 
  • Tùy chọn thu bớt các vòng cung ngoài một layer nhất định. 
  • Có khả năng chọn vào một nút và tập trung vào nút đấy để xem thêm chi tiết hoặc vô hiệu hóa lựa chọn 
  • Tùy chọn số lượng vòng hiển thị tối đa. 

https://github.com/lludo/SwiftSunburstDiagram

7. ASCollectionView

Một bản bổ sung SwiftUI của UICollectionView và UITableView. Có một số hữu ích như sau: 

  • Hỗ trợ tải trước và onAppear/onDisappear.
  • Hỗ trợ chọn ô, hỗ trợ tự động cho chế độ chỉnh sửa SwiftUI
  • Hỗ trợ tự động định cỡ các ô.
  • Hỗ trợ loại bỏ các dải phân cách cho ASTableView
  • Hỗ trợ UICollectionViewCompositableLayout mới và bất kỳ UICollectionViewLayout nào khác.

https://github.com/apptekstudios/ASCollectionView

8. Tùy chỉnh SwiftUI Slider và Track

Gói này cho phép bạn xây dựng các slider và track có khả năng tùy biến cao cho iOS, macOS và Mac Catalyst.

Đặc điểm:

  • Buil slider của riêng bạn và theo dõi bằng cách sử dụng thành phần.
  • Khả năng tùy biến cao.
  • Có cáckiểu ngang và dọc.
  • Giá trị phạm vi và XY.
  • Kích thước khác nhau cho thumbs dưới và trên.

https://github.com/SwiftUIExtensions/Sliders

 9. Đăng nhập với Apple Firebase

Thư viện này là một thành phần SwiftUI để xử lý đăng nhập bằng Apple vào Firebase với các hướng dẫn chi tiết về việc tích hợp nó trong dự án. 

https://github.com/joehinkle11/Login-with-Apple-Firebase-SwiftUI

10. Lazy Pop

Vuốt lên bất kỳ phần nào của màn hình sẽ bắt đầu một hình ảnh động gián đoạn đến chế độ xem trước đó.

Bạn có thể thử bản demo trên App Store. 

https://apps.apple.com/us/app/lazy-pop-swiftui-demo/id1490371801

Bài viết được dịch tại đây. Hi vọng bài viết này hữu ích với bạn! 

Khóa học Lập trình iOS Swift 2020 đang tuyển sinh nhé, đăng ký để đi học ngay nào: https://techmaster.vn/khoa-hoc/25554/lap-trinh-ios-swift-2020