IOS5修改UIToolBar 和UINavigationBar 的背景颜色

UIToolBar 三种办法

方法一

 

/toolBar background image  set based on iOS version
    [[UIDevice currentDevice] systemVersion];

     if ([[[UIDevice currentDevice] systemVersion] floatValue] >  4.9) {

         // iOS 5
        UIImage *toolBarIMG = [UIImage imageNamed:  @" toolBar_brown.png "];  

         if ([toolBar respondsToSelector:@selector(setBackgroundImage:forToolbarPosition:barMetrics:)]) { 
            [toolBar setBackgroundImage:toolBarIMG forToolbarPosition: 0 barMetrics: 0]; 
        }

    }  else {

         // iOS 4
        [toolBar insertSubview:[[[UIImageView alloc] initWithImage:[UIImage imageNamed: @" toolBar_brown.png "]] autorelease] atIndex: 0]; 

    } 

 

 方法二

 // MyToolBar.h

#import <UIKit/UIKit.h>
@interface MyToolBar : UIToolbar {

}
@end

//  MyToolBar.m
#import  " MyToolBar.h "
@implementation MyToolBar

- ( void)drawRect:(CGRect)rect {
 CGContextRef c = UIGraphicsGetCurrentContext();
 UIImage *image = [UIImage imageNamed: @" fish.png "];
 CGContextDrawImage(c, rect, image.CGImage);
}
@end

方法三

-( void)drawRect:(CGRect)rect
{
    
    UIImage *img  = [[[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource: @" ToolbarBk " ofType: @" png "]] autorelease];
    [img drawInRect:CGRectMake( 00, self.frame.size.width, self.frame.size.height)];
    

} 

 

UINavigationBar  

在APPDelegate添加

@implementation UINavigationBar (UINavigationBarCategory)
- ( void)drawRect:(CGRect)rect {
UIImage *img = [UIImage imageNamed: @" navbar.png "];
[img drawInRect:rect];
}

@end 

 #if defined(__IPHONE_5_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_5_0 
        float version = [[[UIDevice currentDevice] systemVersion] floatValue]; 
        if (version >= 5.0) 
        { 
            if ([self.navigationBar respondsToSelector:@selector( setBackgroundImage:forBarMetrics:)]){ 
                 
                [self.navigationBar setBackgroundImage:[UIImage imageNamed:@"navbar.png"] forBarMetrics:UIBarMetricsDefault]; 
            } 
        } 
 
#endif

 

原文:http://www.cnblogs.com/likwo/archive/2011/11/22/2259480.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值