ios – 在Swift中设置活动标签栏项目的背景颜色

前端之家收集整理的这篇文章主要介绍了ios – 在Swift中设置活动标签栏项目的背景颜色前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我希望在没有使用图像的情况下完成此任务,如果可能的话.有没有办法以编程方式创建图像显示,而不必将每个选项卡作为图像呈现?

我在SO上审查过的每个问题都将标签保存为JPG,这比我觉得应该是更多的工作.

有任何想法吗?

解决方法

我对@matcartmill采取了类似的方法,但不需要特殊的图像.这个解决方案只是基于你的颜色.
// set red as selected background color
let numberOfItems = CGFloat(tabBar.items!.count)
let tabBarItemSize = CGSize(width: tabBar.frame.width / numberOfItems,height: tabBar.frame.height)
tabBar.selectionIndicatorImage = UIImage.imageWithColor(UIColor.redColor(),size: tabBarItemSize).resizableImageWithCapInsets(UIEdgeInsetsZero)

// remove default border
tabBar.frame.size.width = self.view.frame.width + 4
tabBar.frame.origin.x = -2

我正在使用UIImage的以下扩展名:

extension UIImage {

    class func imageWithColor(color: UIColor,size: CGSize) -> UIImage {
        let rect: CGRect = CGRectMake(0,size.width,size.height)
        UIGraphicsBeginImageContextWithOptions(size,false,0)
        color.setFill()
        UIRectFill(rect)
        let image: UIImage = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()
        return image
    }

}

我希望这有帮助!

原文链接:https://www.f2er.com/iOS/337079.html

猜你在找的iOS相关文章