แนวทาง Swift 4
ฉันสามารถทำเคล็ดลับได้โดยใช้ฟังก์ชันที่ใช้ TabBarItem และทำการจัดรูปแบบบางอย่าง
เลื่อนภาพลงเล็กน้อยเพื่อให้อยู่กึ่งกลางมากขึ้นและซ่อนข้อความของ Tab Bar ด้วย ทำงานได้ดีกว่าการตั้งชื่อเรื่องเป็นสตริงว่างเปล่าเพราะเมื่อคุณมี NavigationBar เช่นกัน TabBar จะคืนชื่อของ viewController เมื่อเลือก
func formatTabBarItem(tabBarItem: UITabBarItem){
tabBarItem.imageInsets = UIEdgeInsets(top: 6, left: 0, bottom: -6, right: 0)
tabBarItem.setTitleTextAttributes([NSAttributedStringKey.foregroundColor:UIColor.clear], for: .selected)
tabBarItem.setTitleTextAttributes([NSAttributedStringKey.foregroundColor:UIColor.clear], for: .normal)
}
ไวยากรณ์ล่าสุด
extension UITabBarItem {
func setImageOnly(){
imageInsets = UIEdgeInsets(top: 6, left: 0, bottom: -6, right: 0)
setTitleTextAttributes([NSAttributedString.Key.foregroundColor:UIColor.clear], for: .selected)
setTitleTextAttributes([NSAttributedString.Key.foregroundColor:UIColor.clear], for: .normal)
}
}
และใช้มันใน tabBar ของคุณเป็น:
tabBarItem.setImageOnly()