Tôi có một ứng dụng, sử dụng Bảng phân cảnh để hiển thị hai màn hình. Cái đầu tiên là một danh sách (được gọi là "Lista"), và cái thứ hai là một bản đồ ("Térkép"). Mỗi chế độ xem có nút điều hướng bên trái và bên phải. Nhấn nút bên phải sẽ đẩy chế độ xem bản đồ đến Trình điều khiển Điều hướng. Nút quay lại được ẩn theo cách thủ công từ phương thức viewDidLoad
của bản đồ.Kích thước UIBarButtonItem khác nhau
Câu hỏi đặt ra là, tại sao các mặt hàng nút thanh có kích thước khác nhau trên mỗi màn hình? Làm thế nào tôi có thể kiểm soát kích thước của các nút?
Hình ảnh trên các nút có cùng kích thước. Skinning được thực hiện trong AppDelegate
thông qua các thiết lập xuất hiện:
// navbar background
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"bg-titlebar.png"]
forBarMetrics:UIBarMetricsDefault];
// navbar button background
[[UIBarButtonItem appearance] setBackgroundImage:[[UIImage imageNamed:@"btn-main.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(4.0, 4.0, 4.0, 4.0) resizingMode:UIImageResizingModeStretch]
forState:UIControlStateNormal
barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackgroundImage:[[UIImage imageNamed:@"btn-main-active.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(4.0, 4.0, 4.0, 4.0) resizingMode:UIImageResizingModeStretch]
forState:UIControlStateHighlighted
barMetrics:UIBarMetricsDefault];
// back button background
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:[[UIImage imageNamed:@"btn-back.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(4.0, 12.0, 4.0, 4.0) resizingMode:UIImageResizingModeStretch]
forState:UIControlStateNormal
barMetrics:UIBarMetricsDefault];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:[[UIImage imageNamed:@"btn-back-active.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(4.0, 12.0, 4.0, 4.0) resizingMode:UIImageResizingModeStretch]
forState:UIControlStateHighlighted
barMetrics:UIBarMetricsDefault];
trong trường hợp của tôi công thức này luôn làm việc cho tôi. Có thể bạn đang đưa ra giới hạn cho nút thanh của bạn một cách riêng biệt hoặc có một số vấn đề định hướng. –
Các câu hỏi có hình ảnh luôn được đánh giá cao :) – Anupdas
Thử đặt các nút trong chế độ xemWillAppear nếu bạn hiện đang sử dụng viewDidLoad –