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


--------------------------------------------------------------------------------------
- 版权声明:
- 如在本页面内无特别说明,本文内容均为[李大仁博客]原创,本文版权归[李大仁博客]所有。
- 欢迎转载,转载请务必在文章页面明显位置提供原文链接并注明出处。欢迎您在转载本文时保留本段声明。
- 文章标题:iOS开发之创建背景透明或含有自定义图片的UIToolbar
- 独立博客:李大仁博客
- 永久链接:http://www.lidaren.com/archives/804
--------------------------------------------------------------------------------------
以上内容由博客自动发布工具自动发布,最终显示内容和效果会与原文内容有所偏差,敬请谅解。

arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()