【问题标题】:Tab Bar Item Image not showing up标签栏项目图像未显示
【发布时间】:2017-06-23 17:35:47
【问题描述】:

我在资产文件夹中有一张图片,但它没有显示在标签栏上。正如其他答案所说,我已将“渲染为”设置为“原始图像”,但这并不能解决问题。

class CustomTabBarController: UITabBarController {
override func viewDidLoad() {
    super.viewDidLoad()


    let homeController = HomeController(collectionViewLayout: UICollectionViewFlowLayout())
    let navigationController = UINavigationController(rootViewController: homeController)
    navigationController.tabBarItem.image = UIImage(named:"news_feed_icon")

    viewControllers = [homeController]

    }
}

【问题讨论】:

  • 保留 72X72 图像。

标签: ios swift


【解决方案1】:

试试这个。

在 viewDidLoad 中添加

let customTabBarItem:UITabBarItem = UITabBarItem(title: nil, image: UIImage(named: "news_feed_icon")?.withRenderingMode(UIImageRenderingMode.alwaysOriginal), selectedImage: UIImage(named: "news_feed_icon"))
    self.tabBarItem = customTabBarItem

【讨论】:

  • 它不工作。我还尝试将 self 更改为班级的名称。
  • 你在 homeViewController 中添加了吗?
【解决方案2】:

发生这种情况可能有几个原因:

1)您可能输入了错误的图片名称

2) 图片可能太大而无法显示。标签栏项目图像的大小应在 28pt-32pt(像素)左右。

3) 它也可能不是正确的格式。选项卡栏图像应该是用一种纯色呈现的 PNG。如果您尝试在公园或其他地方加载一棵树的 JPEG 文件,可能效果不佳。

另外,

我发现如果您希望更改UITabBarItem 的图像,您需要明确创建一个标签栏项目。如果我需要“更新”和图像到UITabBarItem,我通常会从标签栏中删除所有项目并使用新图像构建所有新项目。

因此,如果这是您的问题,我建议在您的视图控制器中编写一个可以做到这一点的函数,在上面的 viewDidLoad 中,只需在您的控制器上调用该函数即可。

【讨论】:

    【解决方案3】:

    我不知道为什么,但是您需要遵循相同代码的不同顺序。即首先将您的 viewController(s) 添加到 tabBar,然后添加其图像。

    class CustomTabBarController: UITabBarController {
    override func viewDidLoad() {
        super.viewDidLoad()
    
    
        let homeController = HomeController(collectionViewLayout: UICollectionViewFlowLayout())
        let navigationController = UINavigationController(rootViewController: homeController)
    
        //First do this 
        viewControllers = [homeController]
    
        //Then add image
        navigationController.tabBarItem.image = UIImage(named:"news_feed_icon")  
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2017-02-27
      • 2018-02-11
      • 2014-10-10
      • 2020-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-17
      • 1970-01-01
      相关资源
      最近更新 更多