UITabBarController背景圖片和適配
轉載註明出處:http://hi.baidu.com/yunhuaikong/blog/item/086d43fb79fe82c1b58f3128.html
UITabBarController自己的資料有時候讓人無言,如選中時的顏色tintcolor,它的背景等,雖然網路現在修改它的例子很多,但個人感覺都不是最好的辦法。畢竟這樣做程式碼量還是比較大的,如何用官方的api實現相應的功能呢?看看效果圖:
現在一一說明修改方式:
一、修改背景圖片:
素材如下:
二、修改每一個tabbar選中時的顏色,預設為藍色。此處修改為自定義的顏色。
三、去掉選中時的聚焦高亮顏色。可以對比著看看。這裡不給截圖。
素材:
寬度為320/tabbar的個數,用背景色。如果需要其他的效果,自己換一個就行了。
蒐集的方法二:轉載自:http://blog.csdn.net/tianyitianyi1/article/details/7694391
預設的UITabBarController的tabBar背景色是黑色的。有時我們的應用需要變更背景色,或用指定圖片做為背景圖。
如下有兩處實現方法, 這兩種方法均需要先例項UITabBarController。
如app的建立的是基於UITabBarController的應用,可將如下程式碼加入到AppDelegate 的委託方法didFinishLaunchingWithOptions: 中
方法一:
UITabBarController *tabBarController = [[UITabBarController alloc] init];
CGRect frame = CGRectMake(0, 0, 320, 49);
UIView *v = [[UIView alloc] initWithFrame:frame];
UIImage *img = [UIImage imageNamed:@"tabbar.png"];
UIColor *color = [[UIColor alloc] initWithPatternImage:img];
v.backgroundColor = color;
[tabBarController.tabBar insertSubview:v atIndex:0];
tabBarController.tabBar.opaque = YES;
[color release];
[v release];
方法二:
預設UITabBarController的tabBar背景是黑色的。可以按 下面方法:
UITabBarController *tabBarController = [[UITabBarController alloc] init];
NSArray *array = [tabBarController.view subviews];
UITabBar *tabBar = [array objectAtIndex:1];
UIImage *image = [UIImage imageWithContentsOfFile:sourcePath ];
tabBar.layer.contents = (id)image.CGImage;
個人推薦使用第二種方法。程式碼簡潔,思路清晰