2010-05-19 32 views
7

Tôi có một ứng dụng có thanh tab và thanh điều hướng. Tôi đẩy một bộ điều khiển xem được sử dụng để hiển thị ảnh, từng ảnh một. Ban đầu nó cho thấy các thanh và điều khiển tiến/lùi; sau khi trì hoãn, những ẩn này, sử dụng setNavigationBarHidden:animated: và biến đổi tùy chỉnh (CGAffineTransformMakeTranslation) trên thanh tab. Điều này làm việc, nhưng xem bộ điều khiển xem, trong đó cho thấy hình ảnh, nhảy lên và xuống. Điều này cũng đúng nếu tôi rời thanh tab ra khỏi phương trình.Cách ngăn thay đổi kích thước/chuyển đổi khi UINavigationBar ẩn/hiển thị

Làm cách nào để ngăn không cho UINavigationBar di chuyển tầm nhìn của tôi? Tôi muốn hình ảnh cố định trên màn hình, với thanh điều hướng thả xuống trên phần trên cùng của nó.

+0

Tôi đã xử lý điều này bằng cách bỏ qua UINavigationController và trình bày chế độ xem hình ảnh một cách bình thường. Công trình này, nhưng không hoàn toàn thỏa đáng. –

+0

Xin chào, tôi đã giải quyết được vấn đề của mình - có thể nó cũng phù hợp với bạn. Hãy khám phá: http://stackoverflow.com/questions/2881905/imageview-changes-frame-bounds – Icky

Trả lời

0

Tôi biết đây là một câu hỏi cũ, nhưng tôi thực hiện điều đó bằng cách tắt 'Autoresize subviews' trong giao diện Builder

alt text

0

tôi đã không thể tìm thấy một cách thích hợp để xử lý việc này ngoại trừ việc thiết lập các phong cách Navigationbar để mờ như trong:

theNavigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent; 

khác vì tạo ra một thanh điều hướng và thêm nút cho họ, đó là tốt nhất (và nó có vẻ là những gì Apple đã làm cũng như trong đó là ứng dụng hình ảnh)

1
[[navigationController navigationBar] setBarStyle:UIBarStyleBlackTranslucent]; 
[[navigationController navigationBar] setAutoresizesSubviews:NO]; 

điều này dường như làm điều này cho tôi!

1

Đã vấn đề này và cố định nó bằng một lớp kế thừa từ UINavigationController

-(void)viewWillAppear:(BOOL)animated 
{ 
    self.navigationBar.translucent = YES; 
} 

Làm việc lớn đối với tôi, không phải thiết lập phong cách để UIBarStyleBlackTranslucent. Vì vậy, nó đã giữ màu sắc của tôi.

Các vấn đề liên quan