2015-11-20 19 views
6

Vì UIDatePicker không khả dụng trong tvOS, bạn sử dụng cái gì để yêu cầu người dùng cho ngày/giờ? Có lớp học mới thay thế UIDatePicker không?Thay thế UIDatePicker cho tvOS?

Cảm ơn

+0

Tôi tin rằng không có triển khai hiện tại cho UIDatePicker. Tôi đã tìm kiếm một cho dự án của riêng tôi và tôi đã kết thúc mô phỏng một với một cái nhìn bảng với 3 phần (dd-MM-yyyy). Hy vọng nó giúp :) –

Trả lời

1

Hiện tại có vẻ như bạn cần tự mình xây dựng một cái gì đó. Có một khái niệm tốt đẹp với một số lời giải thích here.

1

Vì Apple không cung cấp bộ chọn ngày cho tvOS nên không có giải pháp chuẩn.

Tuy nhiên, một số bước có thể sẽ là:

  1. Thiết kế và thực hiện một giao diện người dùng cho các thao tác các thành phần ngày (= năm, tháng, ngày, giờ, phút).
  2. Theo dõi ngày hiện được chọn, ví dụ: sử dụng thuộc tính được lưu trữ. Có thể cập nhật nhãn ngày bằng cách sử dụng trình quan sát thuộc tính (ví dụ: didSet).
  3. Thực hiện các phương pháp để thao tác ngày đã chọn - thành phần theo thành phần - và kết nối chúng với giao diện người dùng.

Hãy nhớ rằng ngày và tính toán ngày khá phức tạp, vì vậy sử dụng khái niệm ngày cung cấp và phương pháp (!) - có một cái nhìn tại CalendarDateComponents trong tài liệu.

Ở đó, bạn sẽ tìm thấy phương pháp hữu ích, ví dụ:

  • range(of: Calendar.Component, in: Calendar.Component, for: Date) có thể được sử dụng để tìm ra số tháng trong một năm, ngày trong một tháng (và vân vân).

  • dateComponents(Set<Calendar.Component>, from: Date)date(from: DateComponents) có thể được sử dụng để chuyển đổi từ ngày thành phần sang ngày và ngược lại.

  • Hơn nữa, isValidDate(in: Calendar) có thể hữu ích để kiểm tra ngày đó thành phần tạo thành một ngày hợp lệ trong một lịch nhất định.


Dưới đây là một liên kết đến giao diện người dùng (với UISegmentedControl s) mà tôi phát triển cho ứng dụng của tôi, tuy nhiên, có những giải pháp khác như một liên kết bởi ergoon.

User interface with segmented controls.

Trong trường hợp của tôi, bộ chọn ngày được trình bày modally sau khi chọn một ô xem bảng trong một hình thức đầu vào.

Các vấn đề liên quan