我在开发一个主题功能,希望可以实现在用户切换主题后同时更改标题栏的背景图片。
我试过用 UINavigationBar.appearance().setBackgroundImage ,但发现图片只能设置一次,第二次再调用,图片还是第一次调用后的图片。
这是 iOS 的限制吗?还是我哪里没做对?
![]() |
1
Building 144 天前 via iPhone
如果要比较方便的客制化,建议自己实现 navigation bar ,因为这个小东西,从 iOS 7 开始,每年一个新变化呢。
|
2
okakuyang 143 天前
NavigationController 现在有几种样式呢,大标题样式还会在几种状态上切换,你可以在上面新增一个 view ,控制这个 view 的背景来改变样式。
|
3
okakuyang 143 天前
navigationController?.navigationBar.setBackgroundImage( UIImage(named: "bg"), for: .default )
|
4
reallittoma OP @okakuyang #2 新增一个 view 的话,能不能覆盖到状态栏?
|
5
okakuyang 143 天前
@reallittoma 可以
|
![]() |
6
BB9z 139 天前
UIAppearance 应用于新创建的实例,你直接设置现有实例的属性就好了。
|