iOS viewDidLoad 后更改状态栏样式
Changing status bar style after viewDidLoad in iOS
所以我知道在我的 ViewController.m 中我可以覆盖我的
-(UIStatusBarStyle) preferredStatusBarStyle
更改 preferredStatusBarStyle 的 return 的方法。
但事情是这样的:我有一个 属性
@property UIStatusBarStyle *customPreferredStatusBarStyle
我正在更改此桥接块中 customPreferredStatusBarStyle 的值:
[_bridge registerHandler:@"setStatusBarHandler_iOS" handler:^(id data, WVJBResponseCallback responseCallback) {
_customPreferredStatusBarStyle = UIStatusBarStyleDefault;
}]
这意味着如果网站调用桥接器,我将更改它的值。但是我发现 **-(UIStatusBarStyle) preferredStatusBarStyle
** 方法只在 ViewController 启动时被调用一次。
有什么方法可以让我在桥被调用后更改我的状态栏样式吗?
在你的情况下,我认为你可以调用 setNeedsStatusBarAppearanceUpdate()
来触发对状态栏更新的更新。
只需拨打:
Obj-C
[self setNeedsStatusBarAppearanceUpdate];
Swift
setNeedsStatusBarAppearanceUpdate()
所以我知道在我的 ViewController.m 中我可以覆盖我的
-(UIStatusBarStyle) preferredStatusBarStyle
更改 preferredStatusBarStyle 的 return 的方法。 但事情是这样的:我有一个 属性
@property UIStatusBarStyle *customPreferredStatusBarStyle
我正在更改此桥接块中 customPreferredStatusBarStyle 的值:
[_bridge registerHandler:@"setStatusBarHandler_iOS" handler:^(id data, WVJBResponseCallback responseCallback) {
_customPreferredStatusBarStyle = UIStatusBarStyleDefault;
}]
这意味着如果网站调用桥接器,我将更改它的值。但是我发现 **-(UIStatusBarStyle) preferredStatusBarStyle
** 方法只在 ViewController 启动时被调用一次。
有什么方法可以让我在桥被调用后更改我的状态栏样式吗?
在你的情况下,我认为你可以调用 setNeedsStatusBarAppearanceUpdate()
来触发对状态栏更新的更新。
只需拨打:
Obj-C
[self setNeedsStatusBarAppearanceUpdate];
Swift
setNeedsStatusBarAppearanceUpdate()