我很难在tvOS上得到一个背景完全透明的uitabar:我总是得到一个白色的背景。
我尝试了以下操作(将背景色设置为清晰,将背景图像设置为UIImage),但没有成功。

var appearanceTabBar = UITabBar.appearance()
    appearanceTabBar.barTintColor = UIColor.clear
    appearanceTabBar.shadowImage = UIImage()
    appearanceTabBar.backgroundImage = UIImage()

结果如下:
swift - 无法在tvOS中获得透明的标签栏-LMLPHP
有人知道我如何使背景完全透明吗?
将颜色设置为相同的紫色不是一个好主意,因为图片可能在背景上。
谢谢:)
米克尔

最佳答案

我有问题,你必须等待标签栏的用户界面“准备好”。我解决了继承UITabBarController并重写viewWillAppear的问题。

override func viewWillAppear(_ animated: Bool)
{
    super.viewWillAppear(animated)

    self.tabBar.backgroundImage = UIImage()
}

我想您不必从UITabBarController进行扩展,只需在主视图控制器上覆盖viewWillAppear就可以获得相同的结果。

10-08 08:55