TabBar background not set when using resizable image with cap insets #15

Open
mgrebenets opened this Issue Dec 27, 2012 · 0 comments

1 participant

@mgrebenets

Setting background image takes no effect when using resizable image with cap insets.
The line of code is missing (or misplaced?) from NGTabBar.m

- (void)setBackgroundImage:(UIImage *)backgroundImage {
    if (backgroundImage != _backgroundImage) {
        [self.backgroundView removeFromSuperview];
        _backgroundImage = backgroundImage;

        if (backgroundImage != nil) {
            // is the image a non-resizable image?
            if (UIEdgeInsetsEqualToEdgeInsets(backgroundImage.capInsets,UIEdgeInsetsZero)) {
                self.backgroundView = [[UIView alloc] initWithFrame:self.bounds];
                self.backgroundView.backgroundColor = [UIColor colorWithPatternImage:backgroundImage];
                [self insertSubview:self.backgroundView atIndex:0];
            } else {
                self.backgroundView = [[UIImageView alloc] initWithImage:backgroundImage];
               // HERE: the line below is missing in current master code
               [self insertSubview:self.backgroundView atIndex:0];
            }
        } else {
            self.backgroundView = nil;
        }
    }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment