一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

iOS 创建背景透明或含有自定义图片的UIToolbar

时间:2013-10-24 编辑:简简单单 来源:一聚教程网

iOS系统自带的UIToolbar的样式简单,往往不能满足开发或特殊目的的需要,例如设置完全背景透明的UIToolbar或者自定义UIToolbar的背景色,这时候就需要对UIToolbar进行单独定制。
设置UIToolbar背景透明,只需要设置UIToolbar的backgroundColor为[UIColor clearColor]即可,如果需要单独定制UIToolbar的背景色,则需要继承并自己实现UIToolbar对象。
直接修改背景色请参照以下的方法1,继承并自己实现UIToolbar对象请参照方法2。


方法1

 代码如下 复制代码

//使button的tint色与导航条一致
toolbar.tintColor = self.navigationController.navigationBar.tintColor;
toolbar.backgroundColor = [UIColor clearColor];  //设置为背景透明
for (UIView *view in [rightToolbar subviews]) {
 if ([view isKindOfClass:[UIImageView class]]) {
  [view removeFromSuperview];
 }
}

方法2

 代码如下 复制代码

//MyToolbar.h
@interface MyToolbar : UIToolbar
 
@end
 
//MyToolbar.m
@implementation MyToolbar
 
- (id)initWithFrame:(CGRect)aRect {
    if ((self = [super initWithFrame:aRect])) {
        self.opaque = NO;
        self.backgroundColor = [UIColor clearColor];  //设置为背景透明,可以在这里设置背景图片
        //self.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"background"]]; 
        self.clearsContextBeforeDrawing = YES;
    }
    return self;
}
 
- (void)drawRect:(CGRect)rect {
    // do nothing
}
 
@end

热门栏目