0
点赞
收藏
分享

微信扫一扫

iOS开发仿【喵播】之快速集成tableView头部缩放视图+视图为模糊效果

最近在仿喵播做一个视频直播APP,demo基本已经完成,目前在做视频直播聊天室方面的东西,在模仿的过程中遇到很多问题,在解决问题的过程中也学到了很多。仿喵播系列今天先聊一聊快速集成tableView头部缩放视图+视图为模糊效果

  • gif图片展示:


制作的gif文件在这上面看着不够清晰,有晕影;但实际上是很清晰,效果很好。gif文件是用LICEcap Mac版制作的,点击链接下载安装。

LICEcap使用方法:
  • 打开LICEcap软件,它的界面是一个透明的窗口。
  • 点击“Record”后,我们选择GIF文件的保存位置,然后进入3秒倒计时。
  • 点击“Stop”完成录屏。

快速集成tableView头部缩放视图

所谓快速集成即一行代码集成tableView头部缩放视图,这里用的是袁峥Seemygo大牛开源的一个小巧轻便的框架YZHeaderScaleImage,试了一些方法,但是对于喵播这种的tableView头部缩放,这个 YZHeaderScaleImage完全够用。

  • YZHeaderScaleImage使用:

1、导入YZHeaderScaleImage

  • 直接下载源码,然后将UIScrollView+HeaderScaleImage.hUIScrollView+HeaderScaleImage.m文件拖到工程中。
  • 使用cocoapods导入
pod 'YZHeaderScaleImage'
pod install
  • 在需要的项目文件中添加#import "UIScrollView+HeaderScaleImage.h"导入头文件。
  • tableView或者scrollView都可以使用
  • 设置了tableView头部视图,一定记得清空头部视图背景颜色
 - (void)viewDidLoad {
        [super viewDidLoad];
        // 设置tableView头部缩放图片 *一行代码就集成了*
        self.tableView.yz_headerScaleImage = [UIImage imageNamed:@"header"];
        // 设置tableView头部视图,必须设置头部视图背景颜色为clearColor,否则会被挡住
        
        UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 200)];
        // 清空头部视图背景颜色
        headerView.backgroundColor = [UIColor clearColor];
        self.tableView.tableHeaderView = headerView;
}

上面是大牛给的试例,从上面的例子中可以看到headerView的高度设置的是200,看他的源码里面默认的高度也是200,如果你想修改headerView的高度,你需要在源码中修改,即UIScrollView+HeaderScaleImage.m文件中修改第88行代码,如下图:


tableView头部缩放图片就是这么简单。下面介绍如何给headerView添加模糊效果。

在实现tableView头部图片缩放以后,本来想继续用FXBlurView实现headerView的模糊效果,尝试了修改YZHeaderScaleImage源码加FXBlurView框架的方式达到目的,界面走了很多弯路,会出现很神奇的效果,有兴趣的朋友可以试试看看。如果可以实现请告诉我实现方法,感激不尽。因为的headerView是用xib实现的,所以在折腾了大半天后还是放弃,改用storyboard+YZHeaderScaleImage方式实现。仅仅添加了一个UIVisualEffectView,如图:


注意:
1、VisualEffectView和其他控件的层级关系
2、VisualEffectView的起始Y值,我设置到-200是为了避免上下拉伸tableView的时候出现VisualEffectView覆盖不到背景图片的情况,实践一下便知。
3、

这里可以设置不同的模糊效果。
最终就完成了快速集成tableView头部图片缩放效果和headerView的模糊效果。如果您有更好的方法可以留言告知,感激不尽。后续还会继续跟新iOS开发仿喵播系列,关于直播和直播聊天室的功能后续会慢慢更。

举报

相关推荐

0 条评论