从TabBar中删除第一行
在iOS 10上,此代码不能用于删除tabBar阴影线:
[[UITabBar appearance] setShadowImage:[[UIImage alloc] init]];
有人知道,我该怎么做才能删除它?
在具有这两行的iOS 9.3
,该行被删除,但iOS 10
忽略了setShadowImage
命令。
试着低估iOS 10的代码: –
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. [[UITabBar appearance] setBackgroundImage:[UIImage imageNamed:@"fondoTabBar"]]; [UITabBar appearance].layer.borderWidth = 0.0f; [UITabBar appearance].clipsToBounds = true; return YES; }
Swift 3.x
UITabBar.appearance().layer.borderWidth = 0.0 UITabBar.appearance().clipsToBounds = true
只有2行删除了背线
tabBar.shadowImage = UIImage() tabBar.backgroundImage = UIImage()
我在ios 10中遇到了同样的问题。我修改了这个问题只是改变了UITabBar的高度(默认为49)。 在这里查看如何更改高度。
您应该同时实现以下两种方法:
[[UITabBar appearance] setShadowImage:[UIImage new]]; [[UITabBar appearance] setBackgroundImage:[UIImage new]];
对于iOS 10,将tabbar样式改为黑色就行了
self.tabBarController.tabBar.shadowImage = UIImage() self.tabBarController.tabBar.barStyle = .Black
如果您创建自己的UITabBarController子类,则可以在viewDidLoad中设置这样的值
斯威夫特3
override func viewDidLoad() { super.viewDidLoad() self.tabBar.layer.borderWidth = 0 self.tabBar.clipsToBounds = true }
它是tabbar的阴影图像(属性)。 尝试以下解决方案并查看。
试试这个,** Objective-C **
//Remove shadow image by assigning nil value. [[UITabBar appearance] setShadowImage: nil]; // or // Assing UIImage instance without image reference [[UITabBar appearance] setShadowImage: [[UIImage alloc] init]];
**斯威夫特**
//Remove shadow image by assigning nil value. UITabBar.appearance().shadowImage = nil // or // Assing UIImage instance without image reference UITabBar.appearance().shadowImage = UIImage()
这是shadowImage的苹果指南。
@available(iOS 6.0, *) open var shadowImage: UIImage?
默认值为零。 当非零时,显示自定义阴影图像而不是默认阴影图像。 要显示自定义阴影,还必须使用-setBackgroundImage设置自定义背景图像:(如果使用默认背景图像,将使用默认阴影图像)。