为View创建图案背景

时间:2013-04-02 22:22:08

标签: ios ios5 uiview uicolor

我有一个有图案背景的视图。以前我将图像切成大小,因此它们非常大。

我认为有一种更好的方法可以在顶部使用背景颜色和图案图像,因此图像更小,内存更少等。

buttonView =[[UIView alloc] initWithFrame:CGRectMake(0, logoView.bounds.size.height, screen.size.width, 232)];
buttonView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
//    UIImageView *bgButtonView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, buttonView.bounds.size.width, buttonView.bounds.size.height)];
//    NSString *bgButtonViewFilePath = [[NSBundle mainBundle] pathForResource:@"bg-welcomeButtonView" ofType:@"png"];
//    UIImage *bgButtonImg = [[UIImage alloc] initWithContentsOfFile:bgButtonViewFilePath];
//    [bgButtonView setImage:bgButtonImg];
//    [buttonView addSubview:bgButtonView];
    buttonView.backgroundColor = [[UIColor blueColor] initWithPatternImage:[UIImage imageNamed:@"bg-ButtonViewPattern"]];

在最后一行中,我尝试设置我的图案以覆盖蓝色。不幸的是,整个视图显示为白色如果我只有blueColor它会显示纯蓝色,所以不确定上面是否有问题。

我的图像模式如下,它是一个带有白色和透明像素的PNG。

Pattern Image

1 个答案:

答案 0 :(得分:0)

您可以通过以下方式将图案设置为背景颜色:

buttonView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg-ButtonViewPattern"]];

如果图像相对较小,您可以使用所需的叠加颜色制作多种版本。