感谢 CSDN
项目中,可能需要我们为某个视图设置背景图片,而API中UIView没有设置背景图片的方法,那么该如何实现呢?
第一种方法:
利用的UIView的设置背景颜色方法,用图片做图案颜色,然后传给背景颜色。
UIColor *bgColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"bgImg.png"];
UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,480)];
[myView setBackGroundColor:bgColor];
......
第二种方法:
利用UIView的sendSubviewToBack方法
UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,480)];
UIImageView *bgImgView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,320,480)];
[bgImageView setImage:@"bgImg.png"];
[myView addSubView:bgImgView];
[myView sendSubviewToBack:bgImgView];
[bgImgView release];
[myView release];
第三种方法:
iOS视图都是一个图层,最先放置的视图就会在最底层,如此,最先给一个视图添加一个UIImageView后,然后
在上面再一一添加其他控件,效果也跟背景图片差不多。
感谢简书
resizableImageWithCapInsets:方法的探析
4.实验分析
4.1 拉伸模式
resizingMode参数为UIImageResizingModeStretch
4.1.1.capInsets参数为UIEdgeInsetsMake(0, 0, 0, 0)时
当我们向拉伸方法传入该组参数时,代表我们未对原始图像的任何区域进行保护.其拉伸效果如图4.1.1在该种情况下,我们发现原始图像按比例放大了3倍,因此我们将该情况当做拉伸模式下的默认状况****在之后的实验中,我们将该种状况当做参考对象,显示在界面的右下角