答案 0 :(得分:0)
注意:强>
使用selectionIndicatorImage属性指定自定义选择 图片。您的图像呈现在标签栏的顶部,但在标签栏的后面 标签栏项目本身的内容。默认值 property为nil,这会导致标签栏应用默认突出显示 到所选项目
如果您为了某些目的使用selectionIndicatorImage,请将此代码放在TabBarController class
中,这里我使用viewDidLayoutSubviews
,因为在横向和纵向模式下获得了tabbar的动态高度。
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
print("current height \(tabBar.frame.size.height)")
let selTab = UIImage(named: "tab1.png")
let numberOfTabs: CGFloat = 2.0
let tabSize = CGSize(width: (self.view.frame.width)/numberOfTabs, height: tabBar.frame.size.height)
UIGraphicsBeginImageContext(tabSize);
selTab?.draw(in: CGRect(x: 0, y: 0, width: tabSize.width, height: tabSize.height))
let reSizeImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
tabBar.selectionIndicatorImage = reSizeImage
}