2013-02-14 31 views
6

Trên một trong các chế độ xem của tôi, khi nhấn nút, tôi gọi một chế độ xem khác là SplitViewController. Nếu điều này SplitViewController được gọi thông qua một trong các nút này, tôi có các đối tượng đặc biệt để thêm vào chế độ xem. chủ yếu chỉ là các mục thanh điều hướng, như nút hủy. Chế độ xem này có thể được truy cập ở nơi khác và những mục này không cần thiết, đó là lý do tại sao có điều kiện đặc biệt.Thanh Nav biến mất trên popviewcontroller

Tuy nhiên, khi người dùng hoàn tất và tôi bật lại ViewController về màn hình trước đó đã được chọn, thanh điều hướng sẽ biến mất trên màn hình đó. Tôi không thiết lập nó để ẩn cũng không phải tôi làm bất cứ điều gì lạ với thanh nav. Chỉ cần thêm SplitViewController rồi bật lại.

số mã ..

//declare the split screen VC 
SplitScreenViewController *split = [[SplitScreenViewController alloc] init]; 

//set the flag that this VC is coming from a button, so we need the extra nav bar items 
[split setIsFromButton:YES]; 
[self.navigationController pushViewController:split animated:YES]; 

nay là gọi lại chỉ đơn giản là ...

- (void)cancelSelectionBtnClicked 
{ 
    [self.navigationController popViewControllerAnimated:YES]; 
} 

và khi trở về xem, thanh nav đã biến mất.

bất kỳ ý tưởng nào?

chỉnh sửa cần lưu ý chính xác điều tương tự này được thực hiện ở nơi khác theo cùng một cách (theo như tôi có thể biết) và thanh điều hướng hiển thị khi trả lại.

+0

Vâng, tôi đã thêm vào một navbarhidden = NO chỉ để chắc chắn, và điều đó dường như sửa chữa nó. vì vậy một nơi nào đó thanh đang được ẩn rõ ràng. – JMD

Trả lời

9

Trong ViewController của bạn viewWillAppear bạn lại có thể hiển thị navigationBar của mình.

- (void)viewWillAppear:(BOOL)animated 
{ 
    [self.navigationController setNavigationBarHidden:NO]; 
} 
+0

Cảm ơn vì điều này. Tôi đã gặp vấn đề tương tự như OP. – Pangu

1

Tôi đã thấy nhiều hành vi navbar lạ trong UISplitViewController, và trong một vài trường hợp đó là do bộ điều khiển không được đặt là rootViewController của cửa sổ như trái ngược với bộ điều khiển điều hướng giống như bạn đã thiết lập.

+0

Vấn đề không thực sự trong UISplitViewController. Nó hiển thị tốt. Vấn đề là trong màn hình đẩy SplitView vào ngăn xếp của navigationController. Khi splitView được bật, thanh điều hướng sẽ biến mất. – JMD

+0

Tôi hiểu, nhưng tôi đã thấy nó tương tác kém khi bên dưới các bộ điều khiển khác. Apple nói rằng bộ điều khiển chia tách phải là gốc: http://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/ViewControllerCatalog/Chapters/SplitViewControllers.html –

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