Chỉ cần thêm đoạn mã cho giải pháp nhanh cho vấn đề này bằng cách sử dụng hình nền đầy đủ được khai báo trên khởi tạo và ẩn nó.
Bạn có thể thực hiện ẩn giấu nhiều hơn về nội dung cụ thể của từng chế độ xem bằng cách đăng ký thông báo và trong chế độ xem ẩn các chế độ xem (nhãn) cụ thể bạn muốn ẩn.
Một giải pháp khác là kiểm tra xem bộ điều khiển xem nào đang hiển thị và chuyển đổi giữa các ảnh chụp màn hình khác nhau của chế độ xem của bộ điều khiển chế độ xem này mà không có dữ liệu được hiển thị.
Cách đơn giản nhất:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UIImageView *backgroundView_ = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Default.png"]];
self.backgroundView = backgroundView_;
[backgroundView_ release];
// Add other controllers views
// ...
[self.window bringSubviewToFront:self.backgroundView];
self.backgroundView.hidden = YES;
[self.window makeKeyAndVisible];
}
- (void)applicationDidBecomeActive:(UIApplication *)application {
self.backgroundView.hidden = YES;
}
- (void)applicationDidEnterBackground:(UIApplication *)application {
self.backgroundView.hidden = NO;
}
Bạn có chắc chắn? '-applicationDidEnterBackground:' được gọi trước khi chụp ảnh màn hình. – kennytm
Bạn chính xác. Lỗi của tôi. – akaru