【问题标题】:Swift UITabbar Shadow in AppDelegateAppDelegate 中的 Swift UITabbar 阴影
【发布时间】:2018-12-24 07:38:41
【问题描述】:
我尝试将阴影应用到默认标签栏。我从研究中找到了一些代码,但它不起作用。我想将此代码放在 AppDelegate 中以应用于所有控制器。
错在哪里?提前致谢
UITabBar.appearance().layer.shadowColor = UIColor.yellow.cgColor
UITabBar.appearance().layer.shadowOffset = CGSize(width: 0.0, height: 2.0)
UITabBar.appearance().layer.shadowRadius = 15
UITabBar.appearance().layer.shadowOpacity = 1
UITabBar.appearance().layer.masksToBounds = false
【问题讨论】:
标签:
ios
swift
uitabbarcontroller
uitabbar
【解决方案1】:
试试这个
第 1 步 - 像这样在 TabBarViewController 中创建函数 setupTabBar
func setupTabBar() {
tabBar.layer.shadowColor = UIColor.yellow.cgColor
tabBar.layer.shadowOffset = CGSize(width: 0.0, height: 2.0)
tabBar.layer.shadowRadius = 15
tabBar.layer.shadowOpacity = 1
tabBar.layer.masksToBounds = false
}
第 2 步 - 从 viewDidLoad 调用
或者你可以创建自定义 TabBarViewController 类或创建你想要的。
【解决方案2】:
从 AnyTool 创建阴影颜色的图像,或者您可以通过编程方式完成。
之后在 AppDelegate 中使用下面的代码
//Set Shadow Color
UITabBar.appearance().shadowImage = YOURSHADOWIMAGE
【解决方案3】:
尝试使用 self.tabBar.layer 而不是 UITabBar.appearance()