【Swift】UITabBarViewController 自定义小红点

来源:互联网 发布:java小明要到美国旅游 编辑:程序博客网 时间:2024/06/07 10:11
extension UITabBar {    /**     添加小红点     - parameter index: index     */    func showBadgeOnItemIndex(index : Int){        // 移除之前的小红点        removeBadgeOnItemIndex(index)        // 新建小红点        let badgeView = UIView()        badgeView.tag = 888 + index        badgeView.layer.cornerRadius = 5        badgeView.backgroundColor = UIColor.redColor()        let tabFrame = self.frame        // 确定小红点的位置        let percentX = (Double(index) + 0.6) / 4        let x = ceilf(Float(percentX) * Float(tabFrame.size.width))        let y = ceilf(0.1 * Float(tabFrame.size.height))        badgeView.frame = CGRectMake(CGFloat(x) , CGFloat(y), 10, 10)        self.addSubview(badgeView)    }    func hideBadgeOnItemIndex(index : Int){        // 移除小红点        removeBadgeOnItemIndex(index)    }    func removeBadgeOnItemIndex(index : Int){        // 按照tag值进行移除        for itemView in self.subviews {            if(itemView.tag == 888 + index){                itemView.removeFromSuperview()            }        }    }}
原创粉丝点击