Tôi đã phát hiện ra một hành vi kỳ lạ trong ứng dụng của mình, trong đó một kết nối IBOutlet
có khung của chế độ xem được kết nối giữa các cuộc gọi trong bộ điều khiển chế độ xem của tôi đến viewWillAppear:
và viewDidAppear:
. Đây là mã có liên quan trong UIViewController
lớp con của tôi :
-(void)viewWillAppear:(BOOL)animated {
NSLog(@"%@", self.scrollView);
}
-(void)viewDidAppear:(BOOL)animated {
NSLog(@"%@", self.scrollView);
}
và kết quả đầu ra nhật ký:
MyApp[61880:c07] <UIScrollView: 0x1057eff0; frame = (0 0; 0 0); clipsToBounds = YES; autoresize = TM+BM; gestureRecognizers = <NSArray: 0x10580100>; layer = <CALayer: 0x1057f210>; contentOffset: {0, 0}>
MyApp[61880:c07] <UIScrollView: 0x1057eff0; frame = (0 44; 320 416); clipsToBounds = YES; autoresize = TM+BM; gestureRecognizers = <NSArray: 0x10580100>; layer = <CALayer: 0x1057f210>; contentOffset: {0, 0}>
Điều này cho thấy rõ ràng rằng khung hình đang thay đổi giữa hai cuộc gọi. Tôi muốn thiết lập với chế độ xem trong viewDidLoad
phương thức, nhưng nếu nội dung không có sẵn để tôi thay đổi cho đến khi nó xuất hiện trên màn hình, thì điều đó có vẻ khá vô ích. Điều gì có thể xảy ra?