博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UITableView 顶部能够放大的图片
阅读量:6642 次
发布时间:2019-06-25

本文共 974 字,大约阅读时间需要 3 分钟。

 

UITableView 顶部能够放大的图片

现在有挺多的应用在 UITableView 顶部加入图片,通过拖拽 UITableView 来实现图片的放大。

 

对比一下腾讯出品的两款App

QQ:可展示更多的图片,向下滑动TableView,顶部的图片可以展示更多的内容,而不是局限于默认状态下可展示的默认大小。

  

 

再来看看微信的朋友圈:固定的大小,向下拖动TableView后,顶部露出了背景图片。

  

 

两种实现方式,各有各的好处。微信的效果是默认的,即什么都不用设置。这种状态下,我们可以在背景图上做文章,加个Logo之类的都可以。

QQ的实现方式是我比较喜欢的,对于不需要下拉刷新的页面,又不想分配太大的空间来显示顶部图片,则可以选择这种。想要看大图?只要下拉TableView即可。^_^

 

如何开始

设置一个 UIImageView 为 UITableView 的 tableHeaderView,设置 UITableView 的 UIScrollViewDelegate

 table.delegate = self;

在 .m 文件中加入如下代码,在 TableView 滚动时,动态改变 tableHeaderView 的状态。

#pragma mark - UIScrollViewDelegate- (void)scrollViewDidScroll:(UIScrollView *)scrollView{    CGPoint offset = scrollView.contentOffset;    if (offset.y < 0) {        CGRect rect = merchantImage.frame;        rect.origin.y = offset.y;        rect.size.height = 140 - offset.y;        merchantImage.frame = rect;    }}

 

举一反三

1.鉴于 UITableView 是 UIScrollView 的子类,添加在 UIScrollView 顶部的图片也能实现这个效果。

2.对于添加在顶部的 UIImageView,可以设置它的 contentMode,来保证图片在变化的过程中可以保持比例。

转载地址:http://uyovo.baihongyu.com/

你可能感兴趣的文章
Linux之strace简单用法
查看>>
Javascript中的DOM
查看>>
按需路由原理 (ODR-On Demand Routing)
查看>>
corosync与pacemaker实现nfs作为共享存储的Mysql高可用!
查看>>
Safengine NoobyProtect 过注册半自动脚本
查看>>
redis_3.0.7_sds.c_sdsclear()
查看>>
MySQL阶段五——主从复制原理、主从延迟原理与解决
查看>>
我的友情链接
查看>>
JS 有趣的应用 : Array.prototype.slice.call(arguments,0)
查看>>
Linux命令:特殊权限SUID、GUID、Sticky
查看>>
<文明开房 低调叫床> 高考满分作文
查看>>
【Spark亚太研究院系列丛书】Spark实战高手之路-第一章 构建Spark集群(第四步)(4)...
查看>>
【linux系统优化】Selinux介绍及关闭方法
查看>>
阶段总结
查看>>
我的友情链接
查看>>
Spring aop 前置通知、后置通知、返回通知、 异常通知 、后置通知
查看>>
Android中选项卡TabHost的基本使用
查看>>
数据库优化的三个例子
查看>>
Vintage、滚动率、迁移率的应用
查看>>
我的友情链接
查看>>