iOS 中Swift仿微信添加提示小紅點(diǎn)功能(無(wú)數(shù)字)
具體內(nèi)容詳情如下所示:
- 以分類(lèi)的方式實(shí)現(xiàn)
代碼
UITabBar+Extenstion.swift
fileprivate let lxfFlag: Int = 666 extension UITabBar { // MARK:- 顯示小紅點(diǎn) func showBadgOn(index itemIndex: Int, tabbarItemNums: CGFloat = 4.0) { // 移除之前的小紅點(diǎn) self.removeBadgeOn(index: itemIndex) // 創(chuàng)建小紅點(diǎn) let bageView = UIView() bageView.tag = itemIndex + lxfFlag bageView.layer.cornerRadius = 5 bageView.backgroundColor = UIColor.red let tabFrame = self.frame // 確定小紅點(diǎn)的位置 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:- 隱藏小紅點(diǎn) func hideBadg(on itemIndex: Int) { // 移除小紅點(diǎn) self.removeBadgeOn(index: itemIndex) } // MARK:- 移除小紅點(diǎn) fileprivate func removeBadgeOn(index itemIndex: Int) { // 按照tag值進(jìn)行移除 _ = subviews.map { if $0.tag == itemIndex + lxfFlag { $0.removeFromSuperview() } } } }
使用
// 默認(rèn)4個(gè)tabbarItem self.tabBarController?.tabBar.showBadgOn(index: 2) // 如果不是則用這個(gè)方法 // self.tabBarController?.tabBar.showBadgOn(index: Int, tabbarItemNums: CGFloat)
效果
小紅點(diǎn)
以上所述是小編給大家介紹的iOS 中Swift仿微信添加提示小紅點(diǎn)功能(無(wú)數(shù)字),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
iOS開(kāi)發(fā)中一些手寫(xiě)控件及其相關(guān)屬性的使用
這篇文章主要介紹了iOS開(kāi)發(fā)中一些手寫(xiě)控件及其相關(guān)屬性的使用,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下2015-12-12iOS中的實(shí)時(shí)遠(yuǎn)程配置全紀(jì)錄
這篇文章主要給大家介紹了關(guān)于iOS中實(shí)時(shí)遠(yuǎn)程配置的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)各位iOS開(kāi)發(fā)者們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01IOS 播放系統(tǒng)提示音使用總結(jié)(AudioToolbox)
這篇文章主要介紹了IOS 播放系統(tǒng)提示音使用總結(jié)(AudioToolbox)的相關(guān)資料,需要的朋友可以參考下2017-05-05IOS 開(kāi)發(fā)之應(yīng)用喚起實(shí)現(xiàn)原理詳解
這篇文章主要介紹了IOS 開(kāi)發(fā)之應(yīng)用喚起實(shí)現(xiàn)原理詳解的相關(guān)資料,需要的朋友可以參考下2016-12-12iOS 實(shí)現(xiàn)簡(jiǎn)單的加載等待動(dòng)畫(huà)示例(思路與實(shí)現(xiàn))
本篇文章主要介紹了iOS 實(shí)現(xiàn)簡(jiǎn)單的加載等待動(dòng)畫(huà)示例(思路與實(shí)現(xiàn)),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05