您好,登录后才能下订单哦!
如果你知道这个技巧的话,你会诧异这也能写出一篇文章。但是如果你不知道的话,这会有一点帮助,因为只要开发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
欢迎大家一起讨论!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。