Tôi có một số UIViewControllers, được nạp thông qua UINavigationController, nơi tôi ghi đè loadView và thiết lập chế độ xem tùy chỉnh để hiển thị. Tôi gặp vấn đề với việc thiết lập các khung của một số các bản xem trước, và có thể chính bản thân khung nhìn đó. Tôi nghĩ rằng hoặc UINavigationController hoặc UIViewController có thể ép buộc nó là view để lấp đầy màn hình khi được hiển thị.UIViewController hoặc UINavigationController có đặt kích thước của chế độ xem của nó không?
Tôi tự hỏi nếu và/hoặc khi kích thước của chế độ xem được đặt. Và nếu nó đang xảy ra, là nó thiết lập khung của khung nhìn, hoặc làm theo cách khác.
Cảm ơn.
Cập nhật: Tôi vừa nhận thấy trong khi làm việc thông qua này là tôi làm cho một UINavigationController mới, với phương pháp loadView này:
- (void)loadView
{
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(10.0f, 10.0f, 10.0f, 10.0f)];
[view setBackgroundColor:[UIColor redColor]];
self.view = view;
[view release];
}
tôi nhận được một cái nhìn đỏ chiếm toàn bộ màn hình, ngoại trừ tình trạng thanh và tiêu đề. Khi nào quan điểm của tôi được thay đổi kích thước để lấp đầy màn hình? Và tôi nên sử dụng kích thước nào khi tạo chế độ xem?
Cảm ơn bạn đã làm rõ. Khi tải chế độ xem của tôi trong bộ điều khiển chế độ xem loadView, khi được đẩy qua UINavigationController, tôi có cần đặt khung làm CGRectMake (0.0, 0.0, 320.0, 416.0) không? Như trong tôi không cần phải bù đắp trong khung gốc y phối hợp cho UINavigationBar hoặc thanh trạng thái? – Ryan
Phần dưới cùng của thanh điều hướng sẽ trở thành nguồn gốc X, Y mới cho các bộ điều khiển xem, bạn chỉ cần bù cho chiều cao đã điều chỉnh. Để đảm bảo kích thước sử dụng 'NSLog (@" wxh =% fx% f ", self.view.frame.size.width, self.view.frame.size.height);' – Wolfert
Cảm ơn, làm rõ nó cho tôi. Tôi vẫn đang băn khoăn về thời điểm xem được thay đổi. Bởi vì ngay cả khi tôi thiết lập kích thước không chính xác trong loadView nó được thay đổi là kích thước chính xác. Tôi sẽ chấp nhận bạn trả lời, vì nó giúp tôi đi. Cảm ơn một lần nữa. – Ryan