如何在“项目位置”选项上使用“填充”值时删除标签栏项目之间的间距?删除标签栏项目之间的间距(左侧和右侧)
我已经试过如下:
let tabBarController = window!.rootViewController as! UITabBarController
tabBarController.tabBar.itemSpacing = 0
let numberOfItems = CGFloat(tabBarController.tabBar.items!.count)
let tabBarItemSize = CGSize(width: tabBarController.tabBar.frame.width/numberOfItems, height: tabBarController.tabBar.frame.height)
tabBarController.tabBar.selectionIndicatorImage = UIImage.imageWithColor(color: UIColor.secondaryHighlight(), size: tabBarItemSize).resizableImage(withCapInsets: UIEdgeInsets.zero)
for item in tabBarController.tabBar.items! {
item.imageInsets = UIEdgeInsetsMake(0, 0, 0, 0)
}
extension UIImage {
class func imageWithColor(color: UIColor, size: CGSize) -> UIImage {
let rect: CGRect = CGRect(x: 0, y: 0, width: size.width, height: size.height)
UIGraphicsBeginImageContextWithOptions(size, false, 0)
color.setFill()
UIRectFill(rect)
let image: UIImage = UIGraphicsGetImageFromCurrentImageContext()!
UIGraphicsEndImageContext()
return image
}
}
这个结果总是这样(注意,第一个选项卡栏项目的左边的绿线):
刚一说明@ user3427013 ,我看到你从编辑中删除'!',它需要显示图像(标记语法)。我已经为你添加了它。 –
Thanks Yuchen Zhong – user3427013
仅供参考,标签栏的典型用例是当选中/取消选择标签栏项目时(例如,圆圈和“First”文本),图像和文本本身会改变颜色。您通常不会更改整个标签栏项目的背景颜色。 – AdamPro13