2011-11-07 59 views
7

Tôi muốn ẩn thanh công cụ phía dưới trên một màn hình nào đó trong ứng dụng của mình, và IB dường như có tùy chọn cho phép xem trước hoạt động chính xác, nhưng khi tôi xây dựng và thử nghiệm ứng dụng dưới cùng thanh công cụ vẫn còn đó.Ẩn thanh điều khiển điều hướng phía dưới

Tôi biết rằng tôi có thể sử dụng [self.navigationController setToolbarHidden:YES]; nhưng câu hỏi của tôi không phải là cách thực hiện bằng mã, nhưng làm cách nào để làm việc này thông qua Trình tạo giao diện.

enter image description here

Đây là ảnh chụp màn hình về những gì tôi đang nói đến. Xem bên phải cách tôi đã chọn Thanh dưới cùng: Không - điều này sẽ xóa thanh dưới cùng như được xem trước ở bên trái. Nếu tôi đặt nó thành suy luận (thay vì Không) thanh dưới cùng hiển thị trong bản xem trước IB.

Làm cách nào để làm việc này hoạt động chính xác?

Trả lời

5

Bạn không thể đặt cài đặt này trong Trình tạo giao diện. Nếu bạn nhận thấy tiêu đề của phần trong IB nơi bạn có thể bật/tắt các thanh khác nhau, nó nói "mô phỏng". Các tùy chọn này chỉ có ở đó để giúp bạn hình dung UI của mình trong IB khi thiết kế nó. Chúng hoàn toàn không ảnh hưởng đến ứng dụng đang chạy.

+0

'doh! Vì vậy, tôi chỉ nên sử dụng mã trong phương thức 'viewWillAppear' và' viewWillDisapper' để ẩn nó và đưa nó trở lại tương ứng? – Baub

+2

Vâng, đó là những gì bạn nên làm. –

+1

Cũng lưu ý rằng có một tùy chọn có tên "Ẩn thanh dưới cùng khi đẩy" sẽ thực hiện những gì bạn yêu cầu trong trường hợp ViewController đang được đề cập được đẩy lên ngăn điều hướng. – Till

3

Bật "Ẩn thanh dưới cùng khi đẩy" trong IB trong trường hợp ViewController của bạn được đẩy lên ngăn xếp UINavigationController.

Điều này nên chính xác làm những gì bạn đang yêu cầu. Như một phần thưởng, việc ẩn và hiển thị sẽ được hoạt hình độc đáo bởi hệ thống.

+3

Tôi thấy một vấn đề với điều này: Khi tôi bị đẩy trở lại bộ điều khiển xem ban đầu mà KHÔNG có thanh công cụ, nó không có thanh công cụ khi tôi quay lại nó. – Baub

+0

@James Điều đó có thể được giải quyết bằng cách đặt tùy chọn _Shows Toolbar_ của 'UINavigationController'. –

4

Tôi không thể làm điều đó trong bảng phân cảnh khi bạn chỉ muốn ẩn thanh công cụ trong một trình điều khiển chế độ xem. Nếu bạn muốn ẩn nó cho tất cả, bạn cần phải đi đến bộ điều hướng, và thiết lập các giá trị trong bảng phân cảnh. Nhưng điều này làm cho tất cả các bộ điều khiển xem của bạn ẩn các thanh công cụ. Nếu bạn muốn ẩn nó cho một bộ điều khiển xem sử dụng điều này trong bộ điều khiển xem đó:

-(void) viewWillAppear:(BOOL)animated 
{ 
    [self.navigationController.toolbar setHidden: YES]; 
} 

-(void) viewWillDisappear:(BOOL)animated 
{ 
    [self.navigationController.toolbar setHidden: NO]; 
} 
Các vấn đề liên quan