十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
如果你知道这个技巧的话,你会诧异这也能写出一篇文章。但是如果你不知道的话,这会有一点帮助,因为只要开发Iphone应用,总有一天你会用到。
创新互联专注于鸡冠企业网站建设,响应式网站,成都做商城网站。鸡冠网站建设公司,为鸡冠等地区提供建站服务。全流程定制开发,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
为表视图添加背景图片其实和为桌面设置壁纸一样,有时你会用一张和屏幕分辨率一致的一张照片,让它能够覆盖整个桌面。但是有时你手上的照片的分辨率比较小,你又想让它填充整个桌面,那就有两种方式了:放大或是平铺。
本篇文章的主体是为表视图添加纹理,其实就是用到了“平铺”。因为移动设备资源有限,用一整张图片来填充表视图的方法显然过于浪费了。所以一般用一张较小的纹理图通过“平铺”的方式来填充整个表视图背景就很经济。下面是一张效果图,上边是一张纹理单元图。
这是如何实现的呢?主要就靠下面的代码:
- UIImage *bgImage = [UIImage p_w_picpathNamed:@"bg.png"];
- UIImage *resizableBgImage = [bgImage resizableImageWithCapInsets:UIEdgeInsetsZero];
- self.myTableView.backgroundView = [[[UIImageView alloc] initWithImage:resizableBgImage] autorelease];
其中的关键代码就是UIImage类中的resizableImageWithCapInset:实例方法,该方法返回从上到下、从左到右平铺的可变化的UIImage对象,用该对象来构建作为表视图的背景图像视图就可以了。该方法的具体用法可以参考文档。需要提示的是,表视图是在Iphone应用开发中非常非常常用的一个组件,所以要想学好Iphone开发,你必须要了解UITableView的方方面面,在下面的教程中,我回抽机会分次讲解。
该文章完整工程: TiledBackgroundImage.zip
欢迎大家一起讨论!