我是靠谱客的博主 寂寞大雁,这篇文章主要介绍iOS 中Swift仿微信添加提示小红点功能(无数字),现在分享给大家,希望可以做个参考。

具体内容详情如下所示:

  • 以分类的方式实现

代码

UITabBar+Extenstion.swift

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
fileprivate let lxfFlag: Int = 666 extension UITabBar { // MARK:- 显示小红点 func showBadgOn(index itemIndex: Int, tabbarItemNums: CGFloat = 4.0) { // 移除之前的小红点 self.removeBadgeOn(index: itemIndex) // 创建小红点 let bageView = UIView() bageView.tag = itemIndex + lxfFlag bageView.layer.cornerRadius = 5 bageView.backgroundColor = UIColor.red let tabFrame = self.frame // 确定小红点的位置 let percentX: CGFloat = (CGFloat(itemIndex) + 0.59) / tabbarItemNums let x: CGFloat = CGFloat(ceilf(Float(percentX * tabFrame.size.width))) let y: CGFloat = CGFloat(ceilf(Float(0.115 * tabFrame.size.height))) bageView.frame = CGRect(x: x, y: y, width: 10, height: 10) self.addSubview(bageView) } // MARK:- 隐藏小红点 func hideBadg(on itemIndex: Int) { // 移除小红点 self.removeBadgeOn(index: itemIndex) } // MARK:- 移除小红点 fileprivate func removeBadgeOn(index itemIndex: Int) { // 按照tag值进行移除 _ = subviews.map { if $0.tag == itemIndex + lxfFlag { $0.removeFromSuperview() } } } }

使用

复制代码
1
2
3
4
// 默认4个tabbarItem self.tabBarController?.tabBar.showBadgOn(index: 2) // 如果不是则用这个方法 // self.tabBarController?.tabBar.showBadgOn(index: Int, tabbarItemNums: CGFloat)

效果

小红点

以上所述是小编给大家介绍的iOS 中Swift仿微信添加提示小红点功能(无数字),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对靠谱客网站的支持!

最后

以上就是寂寞大雁最近收集整理的关于iOS 中Swift仿微信添加提示小红点功能(无数字)的全部内容,更多相关iOS内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(115)

评论列表共有 0 条评论

立即
投稿
返回
顶部