swift - ScrollEgdeAppearance 对 UINavigationBar 不生效
问题描述
我在 UINavigationController 中嵌入了一个 TableViewcontroller。我希望导航标题在不滚动表视图时为红色(contentOffset = 0),在滚动表视图时为蓝色(contentOffset > 0)。我认为scrollEdgeAppearance
是实现这一目标的完美人选。但是它没有按预期工作。
这是代码,这有什么问题,或者它不是 scrollEdgeAppearance 的用例
任何帮助,将不胜感激。
class TableViewController: UITableViewController {
override func viewDidLoad() {
super.viewDidLoad()
let appearnce = UINavigationBarAppearance()
appearnce.configureWithOpaqueBackground()
appearnce.titleTextAttributes = [.foregroundColor: UIColor.red]
navigationController?.navigationBar.standardAppearance = appearnce
let appearnce2 = UINavigationBarAppearance()
appearnce2.configureWithDefaultBackground()
appearnce2.titleTextAttributes = [.foregroundColor: UIColor.blue]
navigationController?.navigationBar.scrollEdgeAppearance = appearnce2
}
}
解决方案
推荐阅读
- java - 将地图列表中的每个地图分开
- c - C - 如何显示和删除 file.txt 中的数据
- bit-manipulation - 将压缩半字节扩展为 5 位组
- angular - location.reload() 和 location.replace(url) 在 Angular 6 中的 Electron 中不起作用
- java - 使用 Jackson 中的自定义序列化程序序列化嵌套对象时出现 JsonGenerationException
- vuetify.js - 清除图标在 vuetify 的组合框中不起作用
- oracle - Oracle 12c,以序列为默认值的导出表,附加架构
- .net - 是否从 ApplicationException 派生?
- java - Spring关系在不加载子类的情况下获取子ID
- javascript - 多个 Websocket 的 Javascript 线程模型