繁体   English   中英

moreNavigationController 在 UITabBarController 中始终为零

[英]moreNavigationController is always nil in UITabBarController

我正在尝试在我的UITabBarController自定义我的更多按钮的标题,因为我正在使用另一种语言制作应用程序。 我子类化了UITabBarController以便能够访问tabBarController属性。 不幸的是,无论我把它放在viewDidLoad还是viewDidAppear(_) ,它总是nil 关于如何编辑它的任何想法?

import UIKit

class ControllerVC: UITabBarController {

    let uiManager = UIManager()

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    override func viewDidAppear(_ animated: Bool) {
        if let tabBarItem = tabBarController?.moreNavigationController.tabBarItem {
            let deselectedImage = tabBarItem.image
            let selectedImage = tabBarItem.selectedImage
            tabBarController!.moreNavigationController.tabBarItem = UITabBarItem(title: "بیشتر", image: deselectedImage, selectedImage: selectedImage)
        } else {
            uiManager.showActivityIndicator(self)
        }
    }

}

问题不moreNavigationController 问题在于tabBarController 你的班级是一个UITabBarController 标签栏控制器的tabBarController属性始终为nil

做就是了:

let tabBarItem = moreNavigationController.tabBarItem
let deselectedImage = tabBarItem.image
let selectedImage = tabBarItem.selectedImage
moreNavigationController.tabBarItem = UITabBarItem(title: "بیشتر", image: deselectedImage, selectedImage: selectedImage)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM