我想显示一个小圆点作为所选UITabBarItem的指示器。我怎样才能做到这一点?

我使用自定义的UITabBarController。看起来像这样:

import UIKit

class EventTabBar: UITabBarController {

override func awakeFromNib() {
    tabBar.barTintColor = UIColor.white
    tabBar.tintColor = UIColor(red: 79/255, green: 122/255, blue: 198/255, alpha: 1)
    tabBar.unselectedItemTintColor = UIColor(red: 198/255, green: 203/255, blue: 209/255, alpha: 1)
    tabBar.isTranslucent = false
    tabBar.shadowImage = UIImage()
    tabBar.backgroundImage = UIImage()

    //Add Shadow to TabBar
    tabBar.layer.shadowOpacity = 0.12
    tabBar.layer.shadowOffset = CGSize(width: 0, height: 2)
    tabBar.layer.shadowRadius = 8
    tabBar.layer.shadowColor = UIColor.black.cgColor
    tabBar.layer.masksToBounds = false
   }
}


我可以使用selectionIndicatorImage来做到这一点吗?

希望您能够帮助我。感谢您的回答

最佳答案

实际上,这很容易。 TabBarButton具有两个用于设置图像的属性,一个是TabBarItem.image,另一个是TabBarItem.selectedImageTabBarItem.image属性设置不带圆点的图像,以及为TabBarItem.selectedImage属性设置带圆点的图像。
如果只想为选定状态设置圆点,则将常规图像属性设置为UIImage()。希望这能解决问题。

scanTabBarItem.image = UIImage.fontAwesomeIcon(name: .qrcode, textColor: .white, size: CGSize(width: 30, height: 30))
scanTabBarItem.selectedImage = UIImage.fontAwesomeIcon(name: .addressBook, textColor: .white, size: CGSize(width: 30, height: 30))


如果不能正常显示任何图像,

scanTabBarItem.image = UIImage()

10-06 02:13