SwiftでUITabBarControllerの選択色をタブごとに変える
3494 ワード
例えばStoryboard上で
MyTabBarController
-> UINavigationController -> MyNavigationControllerA
-> UINavigationController -> MyNavigationControllerB
-> UINavigationController -> MyNavigationControllerC
という構成になっている場合(MyTabBarControllerのdelegateはself)
MyTabBarController.swift
func tabBarController(tabBarController: UITabBarController, shouldSelectViewController viewController: UIViewController) -> Bool {
guard let tabContent = viewController as? UINavigationController else {
return true
}
let navigationContent = tabContent.viewControllers[0]
if nil != navigationContent as? MyNavigationControllerB {
// Bの時だけ選択色を赤に
tabBar.tintColor = UIColor(red: 1.0, green: 0.0, blue: 0.0, alpha: 1.0)
} else {
// それ以外は緑に
tabBar.tintColor = UIColor(red: 0.0, green: 1.0, blue: 0.0, alpha: 1.0)
}
return true
}
とすれば動的に選択色が変わる。
selectedImageとimageで画像を分けるよりも画像リソースが減るので経済的。
Author And Source
この問題について(SwiftでUITabBarControllerの選択色をタブごとに変える), 我々は、より多くの情報をここで見つけました https://qiita.com/inamori/items/a1a6ada62b6c95d36e1f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .