这几天,经常用到为某个视图设置背景图片,而API中UIView没有设置背景图片的方法,搜集归纳如下:

第一种方法:

利用的UIView的设置背景颜色方法,用图片做图案颜色,然后传给背景颜色。

UIColor *bgColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"bgImg.png"];

UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(,,,)];

[myView setBackGroundColor:bgColor];

第二种方法:

利用UIView的sendSubviewToBack方法

UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(,,,)];

UIImageView *bgImgView = [[UIImageView alloc]initWithFrame:CGRectMake(,,,)];

 [bgImageView setImage:@"bgImg.png"];

 [myView addSubView:bgImgView];

 [myView sendSubviewToBack:bgImgView];

 [bgImgView release];

 [myView release];

第三种方法:

IOS视图都是一个图层,最先放置的视图就会在最底层,如此,最先给一个视图添加一个UIImageView后,然后

在上面再一一添加其他控件,效果也跟背景图片差不多。

----------------------------------------------------------------------------------------------------------------

给UITableView添加背景图呢,可以按照方法:
1 在UITableView控件下面添加一个UIImageView控件,如图1,顺序不可更改,否则会压盖


2 将UITableView的background设置为ClearColor,如图2


3 同样的,将UITableView的父视图的background设置为ClearColor
4 这样背景图就设置好了,我们看一下效果,如图3:


5 可以发现在UITableView的四个转角地方有黑色块,没有完全使用背景图,非常难看,那么如何解决这个问题呢,只要在UITableView所在的ViewController种的viewDidLoad方法种添加下面的代码:

- (void)viewDidLoad {
self.tableView.backgroundColor = [UIColor clearColor]; }

也就是重新把tableView的backgroundColor 设置为clearColor。

谨慎怀疑这时ios的一个bug。

最后的效果如图4:

开发环境为xcode3.2.3 +ios sdk4.0

UIView UITableView 背景图片添加的更多相关文章

  1. UIView 设置背景图片

    http://blog.csdn.net/qijianli/article/details/7777268 项目中,可能需要我们为某个视图设置背景图片,而API中UIView没有设置背景图片的方法,那 ...

  2. CSS 背景图片 添加 重复和定位。

    <!doctype html><html lang="en"> <head> <meta charset="UTF-8" ...

  3. 【android开发笔记】为Button的背景图片添加边框式样式效果

    现在做的项目遇到一个问题,设计给过来的图片只有一种状态,但是实现的需求是要求有两个状态,另一种选状态为图片背景加边框.如图: 刚开使用使用ImageView ,ImageViewButton 效果不是 ...

  4. ios UITableView背景图片设置

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPa ...

  5. UIview定义背景图片

    UIImage *image = [UIImage imageNamed:@"bgimagename"];    UIView *view = [[UIView alloc]ini ...

  6. [BS-29] 给UIView添加背景图片

    给UIView添加背景图片 //默认情况下只能设置UIView的背景颜色,不能给UIView设置背景图片,但通过绘图知识可以做到 - (void)drawRect:(CGRect)rect { [su ...

  7. iOS下uiview和uiscrollview设置背景图片的源码

    1.uiscrollview 设置背景图片 // Setup the Scroll ViewUIScrollView*tempScrollView=(UIScrollView*)self.view;t ...

  8. iOS-UIView-设置背景图片4种方式

    一 . 设置UIView的背景图片 1.将图片作为UIView的背景色,该方法过于占内存,不建议使用.     //1.imageNamed方式 self.view.backgroundColor = ...

  9. 设置JFrame背景图片

    这里我就放上改写的代码吧,不做多的解释,推荐一个好的博文 https://blog.csdn.net/jdsjlzx/article/details/16831815 public void ini_ ...

随机推荐

  1. UVa 12265 (单调栈) Selling Land

    紫书上分析了很多很多,超详细,= ̄ω ̄= 每扫描一行可以计算一个height数组,表示从这块空地向上延伸多少块空地,而且这个数组可以逐行递推. 首先对于每一行来说维护一个单调栈,栈里放的是矩形的左上角 ...

  2. 重装yum

    1)卸载yum rpm -aq|grep yum|xargs rpm -e --nodeps 2)下载并安装python-urlgrabber,python-pycurl,yum-metadata-p ...

  3. php多种实例理解无限极分类

  4. C# 创建系统服务并定时执行【转载】

    [转载]http://www.cnblogs.com/hfzsjz/archive/2011/01/07/1929898.html C# 创建系统服务并定时执行 1.新建项目 --> Windo ...

  5. Android 网络流量监听开源项目-ConnectionClass源码分析

    很多App要做到极致的话,对网络状态的监听是很有必要的,比如在网络差的时候加载质量一般的小图,缩略图,在网络好的时候,加载高清大图,脸书的android 客户端就是这么做的, 当然伟大的脸书也把这部分 ...

  6. Java循环语句之 for

    Java 的循环结构中除了 while 和 do...while 外,还有 for 循环,三种循环可以相互替换. 语法: 执行过程: <1>. 执行循环变量初始化部分,设置循环的初始状态, ...

  7. mysql创建/删除表的例子

    创建表 简单的方式 CREATE TABLE person ( number INT(11), name VARCHAR(255), birthday DATE ); 或者是 CREATE TABLE ...

  8. hdu 3951(博弈规律)

    题意:给定围成一个圈的硬币n枚,然后每次可以取出连续的1-k枚,谁取完最后一枚谁就获胜. 分析:对于第二个人当第一个人取完后,他可以取成对称的形式,所以第二个人必胜. 代码: #include< ...

  9. ylbtech-QQ(腾讯)-群

    ylbtech-DatabaseDesgin:ylbtech-QQ(腾讯)-Account-账户模块, Role-角色.权限模块, Message-消息模块, Qzone-QQ空间,Contacts- ...

  10. JavaScript/jQuery 表单美化插件小结

    Niceforms Niceforms是一款独立的表单美化工具,当前版本为2.0 官方主页:http://www.emblematiq.com/lab/niceforms/ 官方演示:http://w ...