swift - iOS13中的iOS TabBar项目标题问题
问题描述
我在从 Xcode 11 编译的 iOS13 的 tabBar 标题中遇到问题。它在从 Xcode 10 编译时完美运行。请找到问题的屏幕截图,下面是自定义 tabBar 的代码。
代码是
self.tabBar.isTranslucent = true
self.tabBar.tintColor = UIColor.white
UITabBarItem.appearance().badgeColor = Constant.Colors.colorFF1744
if #available(iOS 13, *) {
let appearance = UITabBarAppearance.init()
appearance.stackedLayoutAppearance.normal.titleTextAttributes = [NSAttributedString.Key.font:UIFont(name: Constant.FontNames.RubikRegular, size: Constant.FontSize.P5heading)!,NSAttributedString.Key.foregroundColor:Constant.Colors.color8D8D8D]
appearance.stackedLayoutAppearance.selected.titleTextAttributes = [NSAttributedString.Key.font:UIFont(name: Constant.FontNames.RubikRegular, size:Constant.FontSize.P5heading)!,NSAttributedString.Key.foregroundColor:Constant.Colors.colorFF1744]
appearance.stackedItemPositioning = .automatic
self.tabBar.standardAppearance = appearance
} else {
UITabBarItem.appearance().setTitleTextAttributes([NSAttributedString.Key.font:UIFont(name: Constant.FontNames.RubikRegular, size: Constant.FontSize.P5heading)!, NSAttributedString.Key.foregroundColor:Constant.Colors.color8D8D8D], for: .normal)
UITabBarItem.appearance().setTitleTextAttributes([NSAttributedString.Key.font:UIFont(name: Constant.FontNames.RubikRegular, size: Constant.FontSize.P5heading)!, NSAttributedString.Key.foregroundColor:Constant.Colors.colorFF1744], for: .selected)
}
解决方案
删除您的if #available(iOS 13, *)
并按照您在 iOS 12 中执行此操作的方式执行此操作。新方式 UITabBarAppearance 充满了错误。避免它,直到它们被修复。
推荐阅读
- angular - Angular 2:使用 FormControl 在页面中需要输入字段时防止提交
- json - .NET Core 控制器继承
- python - matplotlib 中的雪佛龙线型
- xamarin.forms - 如何在 Xamarin.forms 中将表情符号转换为 unicode?
- arrays - Adopt a protocol for Array and Dictionary
- sugarcrm - 适合 CRM 复选框显示为下拉
- ios - 无法在我的项目中导入支付库
- spring - 无法解析 intellij 中的符号 AbstractTestNGSpringContextTests
- html - 带有 display:inline-block 的标签从下一行开始
- python - 使用 pyinstaller 规范文件制作 python pypylon 项目的 exe 文件