как дать выбранной панели вкладок цвет градиента? - PullRequest
1 голос
/ 14 июля 2020

Я попытался создать подкласс UITabBar и применил цвет Gradient, но код, который я использовал, добавил цвет ко всей секции панели вкладок

Используемый код:

class TabViewController : UITabBarController {
   
    let gradientlayer = CAGradientLayer()
    
    override func viewDidLoad() {
       super.viewDidLoad()
    }
    
    func setUpSelectionIndicatorImage(withColors colors: [UIColor]) {
        gradientlayer.frame = tabBar.bounds
        gradientlayer.colors = [colors[0].cgColor, colors[1].cgColor]
        gradientlayer.locations = [0, 1]
        gradientlayer.startPoint = CGPoint(x: 1.0, y: 0.0)
        gradientlayer.endPoint = CGPoint(x: 0.0, y: 0.0)
        self.tabBar.layer.insertSublayer(gradientlayer, at: 0)
    }

     override func viewDidLayoutSubviews() {
        super.viewWillLayoutSubviews()
        let colors = [UIColor.IntroGradientColor1 , UIColor.IntroGradientColor2]
        setUpSelectionIndicatorImage(withColors: colors)
    }
    
}

Любая идея, как можно я получаю этот синий цвет градиента ТОЛЬКО на выбранной вкладке, как на прикрепленном изображении.

Я хочу добиться цвета градиента на выбранной панели вкладок

...