8

Tôi có một navigationController trong đó có một thanh điều hướng. Tôi thực sự muốn có 3 UIBarButtonItems, một ở bên trái, một ở giữa, và một ở bên phải. Tôi có thể nhận được các trái và phải thêm vào, nhưng làm thế nào tôi sẽ thêm một ở giữa, kể từ khi sử dụng một navigationController, tôi không thể thêm một mảng các mục vào tài sản navBar mục?Thêm UIBarButtonItem vào navigationItem.titleView?

Tôi bằng cách nào đó có thể thêm UIButton, được tạo kiểu như một UIBarButtonItem vào vị trí titleView?

Trả lời

4

lấy từ api táo, về cơ bản bạn có thể tạo UIView tùy chỉnh có UIButton trong đó và sử dụng làm tiêu đềView của bạn (chú ý rằng lưu ý về leftBarButtonItem khiến titleView bị bỏ qua và không hiển thị): (sửa ghi chú: đây là tài sản của UINavigationItem)

tiêu đềXem Chế độ xem tùy chỉnh được hiển thị ở giữa thanh điều hướng khi mục này là mục trên cùng.

@property (nonatomic, retain) UIView * titleXem Thảo luận Nếu giá trị thuộc tính này là không, tiêu đề của mục điều hướng được hiển thị ở giữa thanh điều hướng khi mục này là mục trên cùng. Nếu bạn đặt thuộc tính này thành tiêu đề tùy chỉnh, nó sẽ được hiển thị thay cho tiêu đề. Thuộc tính này bị bỏ qua nếu leftBarButtonItem không phải là không.

Chế độ xem tùy chỉnh có thể chứa các nút. Sử dụng phương thức buttonWithType: trong lớp UIButton để thêm các nút vào khung nhìn tùy chỉnh của bạn theo kiểu của thanh điều hướng. Chế độ xem tiêu đề tùy chỉnh được căn giữa trên thanh điều hướng và có thể được thay đổi kích thước để vừa.

+1

Lưu ý trong tài liệu 'leftBarButtonItem' khiến' titleView' bị bỏ qua là điều thú vị. Trong các thử nghiệm của tôi trên iOS 4.3 và iOS 5.1, tôi thấy rằng đây là * false *. Tôi đã thêm một nút làm mục bên trái và thêm điều khiển được phân đoạn làm tiêu đề và cả hai đều vui vẻ được hiển thị. –

+1

@ AdrianSchönig, liên quan đến nhận xét của bạn: http://stackoverflow.com/q/9690409/280789 – mon4goos

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