moreNavigationController在UITabBarController中始终为零
我试图自定义我的UITabBarController
中的“更多”按钮的标题,因为我正在使用其他语言的应用程序。我分类UITabBarController
能够访问tabBarController
属性。不幸的是,它总是nil
我把它放在viewDidLoad
或viewDidAppear(_)
。有关我如何编辑它的任何想法?moreNavigationController在UITabBarController中始终为零
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)
感谢您的帮助。现在它进入if语句。唯一的问题是我所做的更改不会生效。我写'moreNavigationController.tabBarItem = UITabBarItem(标题:“بیشتر”,图像:deselectedImage,selectedImage:selectedImage)',但它不起作用。显示标签为“更多”的普通简单More按钮。 –
这是与原始问题分开的问题。但可能只是您无法更改“更多”控制器的选项卡。如果您的应用已正确本地化,它应该会自动更改。 – rmaddy
@DivyeshGondaliya这是没有必要的。 – rmaddy