Tôi muốn hiển thị chỉ báo tiến trình trong một hộp nửa trong suốt nổi trên chế độ xem bảng. Nói cách khác, khi nội dung bảng đang được tải xuống, tôi muốn nhãn "Đang cập nhật" xuất hiện trên đó.Làm cách nào để hiển thị lớp phủ chỉ báo tiến trình/HUD trên iPhone?
Tôi đã thấy điều này trong một số ứng dụng trong cửa hàng, đặc biệt là Facebook (khi bạn lắc để tải lại) và Darkslide.
Xung đầu tiên của tôi là tạo UIView nửa trong suốt, đặt UILabel và UIProgressIndicatorView bên trong nó và thêm nó vào phân cấp khung nhìn ... nhưng ở đâu?
Một UIView có thể không chồng chéo anh chị em của nó, vì vậy tôi không thể làm cho nó một subview của cửa sổ.
Tôi cũng không thể biến nó thành chế độ xem phụ của bảng, vì sau đó nó sẽ cuộn lên xuống bằng nội dung bảng.
Tôi đã nghĩ đến việc tạo UIWindow mới, nhưng tài liệu về cơ bản nói không.
Tôi biết Calayers có thể chồng lên nhau, vì vậy đó sẽ là một lựa chọn, nhưng tôi không thể đặt chỉ báo tiến trình bên trong một CALayer, tôi có thể không? Tôi có nên cuộn chỉ báo tiến trình của riêng mình làm hoạt hình CALayer thay vì UIView không?
Tôi không muốn nghe về số private APIs.
Chỉnh sửa: Câu hỏi được dựa trên giả định bị lỗi. NSViews (trên Mac OS X) có thể không trùng lặp, nhưng UIViews trên iPhone có thể.
Bạn có thể lưu yoursel f một số công việc bằng cách sử dụng [MBProgressHUD] (https://github.com/matej/MBProgressHUD) nếu nó đáp ứng nhu cầu của bạn. –