一行代码实现多风格的推送小红点
查看次数:16684
下载次数:927
上传时间:2015-08-03
大小:1 KB
今天我们来实现一个在iOS中让人又爱又恨的推送“小红点”WZLBadge。那什么是badge呢?当后台有数据更新需要让用户知道时,在按钮或者其他控件上显示一个“小红点”提醒用户。注意,这里的“小红点”仅仅是泛指,实际的视图可以天马行空,在这个版本中我们先实现以下几种:
- 小红点
- 红底白字“new”
- 红底白字数字
为了让小红点显示后更加醒目,在这个版本中我又实现了三种不同的状态动画(status animation):
心脏跳动效果(WBadgeAnimTypeScale)
呼吸灯效果(WBadgeAnimTypeBreathe)
横向抖动(WBadgeAnimTypeShake)
静止状态(WBadgeAnimTypeNone, 默认)
WZLBadge还有以下优点:
支持横竖屏支持iOS5~iOS8允许高度定制化,包括“红点”的背景颜色,文字(字体大小、颜色),位置等
由于WZLBadge采用对UIView扩展category的方式,因此,所有的UIView及其继承子类(UIControl等)都可以无缝使用,当前版本开放的接口主要有以下几个:
- (void)showBadge;
- (void)showBadgeWithStyle:(WBadgeStyle)style value:(NSInteger)value animationType:(WBadgeAnimType)aniType;
- (void)clearBadge;
我将源代码托管在github上,我个人希望WZLBadge能不断优化成为iOS平台上推送红点的终极解决方案,如果你感兴趣,我非常欢迎你一起加入让WZLBadge变得更好。有什么问题或者建议请留言或者在github提issue。
此外,希望你能在github上对WZLBadge进行star/fork/watch,接下来我的更新会直接通知到你^^。
github地址:(https://github.com/weng1250/WZLBadge)
测试环境:Xcode 6.2,iOS 6.0 以上
收藏