代码之家  ›  专栏  ›  技术社区  ›  Erik

UItoolbar类别drawrect:无法工作

  •  0
  • Erik  · 技术社区  · 14 年前

    我试过以下方法:

    @implementation UIToolbar (Image)
    
    -(void)drawRect:(CGRect)rect {
        UIImage *img  = [UIImage imageNamed: @"navigationBar.png"];
        [img drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
    }
    
    @end
    

    没有任何成功,但它与uinavigationbar+图像的代码完全相同。

    没有为UItoolBar调用DrawRect方法,这是为什么?

    1 回复  |  直到 14 年前
        1
  •  0
  •   Erik    14 年前

    http://atastypixel.com/blog/making-uitoolbar-and-uinavigationbars-background-totally-transparent/

    - (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx

    - (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx {
        CALayer *imgLayer = [[CALayer alloc] init];
        [imgLayer setContents:(id)[[UIImage imageNamed: @"toolbar.png"] CGImage]];
        [imgLayer setBounds:CGRectMake(0.0f, 0.0f, self.frame.size.width, self.frame.size.height)];
        [imgLayer setPosition:CGPointMake(self.bounds.size.width/2,self.bounds.size.height/2)];
        [layer insertSublayer:imgLayer atIndex:0];
    }