Tôi muốn tạo chế độ xem (UIControl) chặn tất cả đầu vào và hiển thị UIActivityIndicatorView trong khi xác thực người dùng.Thêm UIView trên tất cả các chế độ xem khác, bao gồm StatusBar
UIActionSheet và UIAlertView đều quản lý để thêm chế độ xem nửa trong suốt màu đen trên đầu của tất cả các chế độ xem khác để chặn đầu vào và tôi muốn thực hiện tương tự.
Tôi đã thử thêm chế độ xem vào UIWindow trên cùng trong mảng [[UIApplication sharedApplication]], và trong khi điều này đặt nó trên UIKeyboard nếu nó hiển thị, nó không đặt nó trên StatusBar (mà có ý nghĩa).
Nỗ lực tiếp theo của tôi là mở rộng UIAlertView, xóa tất cả các bản xem con của nó và đặt layer.contents = nil, sau đó thêm ActivityIndicator làm chế độ xem phụ. Điều này làm việc tốt, nhưng tôi dường như không thể giết được sự chuyển đổi bouncy mặc định của UIAlertView khi bạn gọi nó là "show".
Có ai có bất kỳ gợi ý nào về cách tốt nhất để giải quyết vấn đề này cho tôi toàn quyền kiểm soát không? Ồ, tôi biết rằng đầu vào chặn không tuyệt vời nhưng tôi đảm bảo rằng nó không hoạt động trong một khoảng thời gian ngắn và nó có lợi cho người dùng biết rằng hành động của họ phải hoàn tất để xử lý, đang xử lý .
Tại sao "che" thanh trạng thái? Tại sao không che giấu nó, nó có mờ hay chỉ bỏ qua nó hoàn toàn? Thanh trạng thái không phản ứng với các lần chạm, nếu tôi nhớ chính xác. –
Tôi muốn nó trông giống như trong chế độ xem lớp phủ. Điều này làm cho nó rõ ràng cho người dùng rằng họ không thể tương tác hiện tại. Làm cho nó mờ không đạt được điều này không may, và ẩn nó sẽ trông lạ nếu chỉ trong thời gian xác thực. Và nó thực sự phản ứng với các lần chạm. Mặc định là cuộn UIScrollView đang hoạt động lên trên cùng. –