FMListPlaceholder




项目地址:https://github.com/yfming93/FMListPlaceholder

一个优雅的占位图解决方案。适用于 UITableView 和 UICollectionView。

一行代码处理空列表占位图逻辑

0x001 与其他的同类三方库对比的优点:

  • 首次进入列表占位图是不显示的。只在网络请求完成后,再次刷新列表时才处理相关逻辑;
  • 简单、高效、实用,最快一行代码就可以集成;
  • 提供更加全面丰富、高度自定义的效果;
  • 可一行代码设置一套自己项目专属的默认方案,然后也可以在某个特殊的列表单独二次自定义效果;

0x002 效果演示

0x003 如何使用

  • CocoaPods 使用:

    • Podfile 文件新增 pod "FMListPlaceholder"
    • 打开终端, 切换到项目文件目录。 执行 pod install
    • 导入主头文件:#import <FMListPlaceholder.h>
  • 手动拖入 使用:
    • 下载演示工程,把 FMListPlaceholder 文件夹拖入自己项目中;
    • 导入主头文件:#import "FMListPlaceholder.h"
一行代码使用
_tableView.needPlaceholderView = YES;   //the same as UICollectionView

或者如下自定义

自定义全局默认
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {[FMListPlaceholder fm_defaultBackgroundColor:UIColor.whiteColor coverName:@"xxx" tips:@"Sorroy,nil here!" tipsTextColor:UIColor.grayColor tipsFont:[UIFont systemFontOfSize:16] coverSize:CGSizeZero coverCenterYOffset:-30 coverSpaceToTips:10];return YES;
}

0x004 自定义

自定义某个特殊列表

根据自己需求自行调用如下某些接口设置,UITableView 和 UICollectionView 接口相同。

[_tableView fm_emptyCoverName:@"fm_placeholder_nil" emptyTips:@" "];
[_tableView fm_backgroundColor:[UIColor colorWithRed:0.91 green:0.90 blue:0.90 alpha:1.00] tipsTextColor:UIColor.redColor tipsFont:nil];
[_tableView fm_coverCenterYOffset:-80 coverSize:CGSizeMake(90, 120) coverSpaceToTips:20];
// the same as UICollectionView
点击刷新逻辑

(如果需要点击刷新逻辑,可实现如下 block)

_tableView.reloadBlock = ^(UIScrollView *listView) {// Reload Handle is Here!// [listView.mj_header beginRefreshing]; // reloadData
};
更加详细请见演示工程

0x005 希望

  • 如果您在使用过程中有任何疑问或想要更多界面进行自定义,您可以发给我!

  • 如果您想参与本项目的维护或具有良好的设计风格,欢迎拉动请求!
  • 如果您在使用时有任何问题,请与我联系。
    • 博客网站: www.yfmingo.cn
    • 邮箱: yfmingo@163.com.
  • 希望能够共同完善这个项目,让它变得更强大,能够满足大多数用户的需求!

0x006 QQ 群

0x007 要求

  • iOS 9.0 or later
  • Xcode 9.0 or later

0x008 许可证

All source code is licensed under the MIT License.

转载于:https://www.cnblogs.com/yfming/p/10283096.html

一个优雅的占位图解决方案。适用于 UITableView 和 UICollectionView。相关推荐

  1. iOS开发造轮子 | 通用占位图

    https://www.jianshu.com/p/beca3ac24031 实际运用场景: 没网时的提示view,tableView或collectionView没内容时的展示view,以及其它特殊 ...

  2. Android ImageView到底怎么设置圆角图片?背景圆角?控件圆角?图片圆角?占位图圆角?

    前言 在我们实际开发应用的过程中,我想大家或多或少都遇到过需要加载圆角图片的场景,还有一些图片是四周圆角不对称,异性圆角等等情况. 我们可能会去网上或Github上搜索一些RoundImageView ...

  3. Splash 占位图适配 全面屏笔记

    在简书搜索 全面屏适配,可以找出一大堆结果,这篇笔记不再多说已经有的理论知识,大家参考最多的资料也贴在文章的最后了,主要内容记录最近在开发中遇到的冷启动占位图splash适配全面屏的问题. 左边是一加 ...

  4. delphi控件切图界面闪烁_8、控件系列之_加载占位图+页面指示器

    Skeleton Screen/加载占位图 Skeleton Screen(加载占位图)是近年流行的加载控件,通常表现形式是在界面上待加载区域填充灰色的占位图,与线框图的效果非常相似.Skeleton ...

  5. delphi控件切图界面闪烁_「这个控件叫什么」系列之加载占位图+页面指示器

    @龙爪槐守望者 :鉴于国内交互设计名词混乱不统一,很多设计师不知道如何用专业术语称呼一个控件,因此我开了<这个控件叫什么>专题,梳理控件的名称和使用事项,希望能为推动交互设计发展,做出一点 ...

  6. 如何设计一个优雅健壮的Android WebView?,吊打面试官系列

    }if (mIWebViewClient != null) {mIWebViewClient.onPageFinished(view, newProgress);} } } 可以看到,我们使用了`mP ...

  7. html怎么帮图片占位,css 技巧:利用 after 伪对象和 background 属性实现 img 图片标签占位图...

    如图: 图片加载失败了,在浏览器会默认显示一张破图.受各种网速.浏览器等因素影响,我们无法保证图片能够完全加载成功.加载失败时如何更友好的显示是前端要考虑的主要因素. 常见做法都是使用一张默认图代替加 ...

  8. html怎么帮图片占位,html图片和css背景图片哪个先开始加载?css占位图怎么操作?...

    如果你的网站是个图片站,首页显示了很多图片.那么你就会有图片多了导致加载比较慢的困扰.这个时候有几个方案解决. 1.物理解决方案:加大网站的带宽+压缩图片大小: 2.用图片懒加载js,图片没加载出来之 ...

  9. 如何设计一个优雅健壮的Android WebView?(下

    nativeReady = false; var jsoncommand = JSON.stringify(command); var _temp = prompt(jsoncommand,''); ...

最新文章

  1. aes js 加盐值 解密_crypto-js aes加密解密
  2. 计算机操作培训主持词,魅力女性沙龙会主持词文稿.docx
  3. 第十七届全国大学智能车竞赛STC芯片申请方法
  4. android 禁止Viewpager左右滑动功能
  5. 揭秘神仙高校的课堂!网友跪了:这就是差距啊!
  6. 5G的场景、需求、通信速率
  7. Dynamics CRM 2016 安装
  8. 假设以带头结点的循环链表表示队列_数据结构·链表(C实现)
  9. 【Linux使用】Centos 7 GRUB与内核版本切换
  10. 工具推荐--正则表达式
  11. 进程占用导致linux中命令无法执行
  12. 万万没想到一个普通的地区问题,竟然让我们大战了300回合
  13. OMRON PLC使用技巧总结
  14. python微信自动发送信息脚本
  15. ABAP如何获取当前月的第一天和最后一天
  16. mysql基础命令语句以及使用方法:
  17. 2021前端经典面试题
  18. html5允许属性值不使用引号,HTML5概述 - 阿振的个人空间 - OSCHINA - 中文开源技术交流社区...
  19. 算法很美 将整数的奇偶位互换
  20. 【AMD和CMD的区别】

热门文章

  1. linux 用户空间 和 内核空间 延时函数
  2. python3(十一)内置模块和类型转换
  3. TensorFlow 2.X中的动手NLP深度学习模型准备
  4. tableau使用_使用Tableau探索墨尔本房地产市场
  5. R语言数据转换——plyr包
  6. 刷光借呗额度之后用户突然去世,支付宝会怎么做?
  7. 什么样的征信才算是好的?
  8. lepus监控oracle数据库_lepus天兔数据库监控系统搭建记录
  9. java面试换背景颜色_实习|渣二本Java菜鸡0 Offer的春招血泪史,一定要主动去找实习呀!
  10. 每天九点十分开始每半小时一次执行一个cron_每天通勤4小时!西咸双城生活的上班族,不简单...