2012-01-03 40 views
6

Tôi đã thực hiện dự án iOS trên thanh tab, khi tôi nhận được yêu cầu thay đổi hình nền của thanh tab thành hình ảnh tùy chỉnh. Dự án được phát triển cho iOS 4.x, do đó, [tabBar setTabBarBackgroundImage:[UIImage imageNamed:@"custom.jpg"]] của iOS5 không hoạt động. Bạn có thể gợi ý cho tôi một số giải pháp đơn giản (nếu có khả năng nào, tôi không muốn thay đổi toàn bộ dự án)?Hình nền thanh tab tùy chỉnh - trong iOS 4.x

Edit: Chỉ ba dòng mã có thể giải quyết tất cả:

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"customImage.png"]]; 
[self.tabBarController.tabBar insertSubview:imageView atIndex:0]; 
[imageView release]; 

Trả lời

3

Một giải pháp khả thi sẽ được chấm UIView với hình nền của bạn chính xác đằng sau UITabBar. Sau đó, giảm độ mờ của thanh tab xuống 0,5 để bạn có thể thấy hình nền chạy qua.

UIView *bckgrndView = [[UIView alloc] initWithFrame:CGRectMake(tabbar.frame.coords.x, tabbar.frame.coords.y, tabbar.frame.size.width, tabbar.frame.size.height)]; 
[bckgrndView setBackgroundImage:[UIImage imageNamed:@"custom.jpg"]]; 
[tabbar.superView insertSubView:bckgrndView belowSubview:tabbar]; 
tabbar.alpha = 0.5; 
[bckgrndView release]; 

Xin lỗi nếu mã của tôi chứa một số lỗi. Tôi đã cố gắng làm điều này bằng trái tim ... Nhưng bạn sẽ bắt được sự trôi dạt.

+0

Cảm ơn bạn, đó là một ý tưởng hữu ích :) – MMMM

0

Tôi đã trả lời loại câu hỏi tương tự here. Hy vọng nó sẽ giúp.

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