无法更改在 Storyboard 中设置的 TabBar 项图标
Posted
技术标签:
【中文标题】无法更改在 Storyboard 中设置的 TabBar 项图标【英文标题】:Can't change TabBar Item icon that is set in Storyboard 【发布时间】:2016-05-06 08:28:36 【问题描述】:在我的应用中,其中一个 TabBar 项需要一个自定义图标,具体取决于应用内的上下文。 我正在使用此代码来完成此操作:
item1 = [[UITabBarItem alloc] initWithTitle:@"Jij" image:inactiveIcon selectedImage:activeIcon];
而且效果很好。 只要我不在情节提要中设置图标。
在我的实验中,我发现从AppDelegate's
didFinishLaunchingWithOptions
运行上面的代码会在TabBar
甚至存在之前执行代码。至少我是这么认为的。
所以,为了至少有一个临时占位符图标,我必须在情节提要中设置它。但不知何故,这使我的代码无法更新图像。
我什至考虑对TabBarController
进行子类化,以确保及时加载图标。
请指出我的代码、逻辑或发现中的错误。
总结问题:
TabBarItem
图像在 Storyboard 中设置后为什么无法更改?
【问题讨论】:
【参考方案1】:您还可以直接在资产目录中设置标签栏图像的属性渲染为。
您可以选择将属性设置为默认、原始图像和模板图像。 希望这会有所帮助:)
【讨论】:
我尝试了所有三个选项,但资产目录中的图像仍然占上风,即:在我运行我的方法后它仍然存在。但是,如果我没有在 Storyboard 中设置该图像,它起初显示为空,但在运行我的方法后,将显示自定义图像。 @Sjakelien 选择 UITabbarItem 并添加一个运行时属性 'selectedImage',选择 Type as 'Image' 并将图像名称作为其值。可能这会对你有所帮助。 我一定是做错了什么。我试过你的建议,有和没有占位符图像,但结果是一样的。 它对我有用...将“作为键从默认图像渲染为原始图像”....有效。以上是关于无法更改在 Storyboard 中设置的 TabBar 项图标的主要内容,如果未能解决你的问题,请参考以下文章
iOS 8:在界面构建器中设置的自定义标签栏项目的选定图像不起作用
如何使用 Swift 中的自动生成键从情节提要中设置的 UITextView 中检索文本?
为啥我的 django 模板无法识别我在 views.py 文件中设置的 url 参数?