Tôi có một ứng dụng chạy trên UINavigationController. Bây giờ tôi muốn thêm một phần tử UIToolbar vào cuối mỗi màn hình. Thanh công cụ ở phía dưới nên được tùy chỉnh cho ViewController hiện đang được hiển thị. Ý tưởng đầu tiên của tôi là chỉ cần thêm thanh công cụ vào khung nhìn navigationController và gắn thẻ nó, trong viewController, tôi nghĩ rằng tôi sẽ có thể lấy ra phần tử UIToolbar. Tôi có đoạn mã sau:UIToolbar trên mỗi trang của UINavigationController
Trong appdelegate tôi:
// Get instance of Toolbar (navController is an instance of UINavigationController and TOOLBAR_TAG a constant)
UIToolbar *toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 440, 320, 40)];
toolbar.tag = TOOLBAR_TAG;
[navController.view addSubview:toolbar];
Trong viewController của tôi, tôi đã cố gắng này:
UIToolbar *toolbar = [self.navigationController.view viewWithTag:TOOLBAR_TAG];
toolbar.barStyle = UIBarStyleBlack;
Tuy nhiên, điều này mang lại cho tôi một lỗi nói rằng thanh công cụ trong trường hợp của tôi là một " UILayoutContainerView "đối tượng, không phải là một đối tượng UIToolbar. Do đó ý tưởng này có vẻ là một kết thúc chết.
Người khác giải quyết vấn đề này như thế nào?
Wow đó là dịch vụ tôi không ngờ, thậm chí tôi đã tìm kiếm tài liệu chưa tìm thấy tài liệu này. Rất tuyệt, cảm ơn! – Robin
bạn được chào đón. =) trong tài liệu UINavigationController, btw: http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UINavigationController_Class/Reference/Reference.html#//apple_ref/occ/instp/UINavigationController/toolbar –
Bạn có thể ghi đè lên phương thức pushController UINavigationController của bạn để tránh sao chép/dán và thiết lập các mục thanh công cụ ở đây. –