swift/制作一个简单的tableHeaderview+_navigationbar渐变效果(二)
接着上一篇swift/制作一个简单的tableheaderview+_navigationbar渐变效果(一)继续完成没有做完的任务
编码
上一篇已经完成了对于UINavigationBar的扩展,仅仅只用了24行代码变达成想要的效果。接下来编写tableheaderview的效果部分。
2:ParallaxHeaderView(1在上篇%>_<%)
虽然只是类似于一个图片下拉放大的效果,但请允许我使用Parallax来命名。
示例图给出两种效果,一种有模糊效果一种无模糊效果。先来实现第一种无模糊效果的。
目标分析
要求:
1:tableHeaderView需要有张图片(废话)
2:图片能够根据滚动的不同而展示不一样的样式(大小、显示范围)
在分析方法之前先弄清楚两点
UIImageView的contentMode属性的作用效果
/**
UIViewContentModeScaleToFill : 图片拉伸至填充整个UIImageView(图片可能会变形)
UIViewContentModeScaleAspectFit : 图片拉伸至完全显示在UIImageView里面为止(图片不会变形)
UIViewContentModeScaleAspectFill :
图片拉伸至 图片的宽度等于UIImageView的宽度 或者 图片的高度等于UIImageView的高度 为止
UIViewContentModeRedraw : 调用了setNeedsDisplay方法时,就会将图片重新渲染
UIViewContentModeCenter : 居中显示
UIViewContentModeTop,
UIViewContentModeBottom,
UIViewContentModeLeft,
UIViewContentModeRight,
UIViewContentModeTopLeft,
UIViewContentModeTopRight,
UIViewContentModeBottomLeft,
UIViewContentModeBottomRight,
经验规律:
1.凡是带有Scale单词的,图片都会拉伸
2.凡是带有Aspect单词的,图片都会保持原来的宽高比,图片不会变形
*/
上面是以前用oc的时候对于UIImageView的contentMode的一些解释,在这利用UIViewContentModeScaleAspectFill这一效果进行演示说明(因为项目中使用的就是这个模式)。