问题标签 [ios-statusbar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 更改 StatusBar 背景颜色和preferredStatusBarStyle 的最佳方法应该是什么?
我的要求是,在我的应用程序中有两个流程,因此对于两个流程的首选状态栏样式和状态栏背景颜色的值是不同的。因此,如果我有 40 viewControllers
,则 20 个 VC 的值相同,而 20 个 VC 的值与前 20 个值不同。
现在我正在更改每个视图控制器中的值,如下所示:-
在 info.plist 我这样做了:-
你们能告诉我任何方式,这样我就可以只在两个地方编写这些代码行,我就可以达到我的要求。
ios - 取消控制器动画转换时不正确的preferredStatusBarStyle
我有一个UITabViewController
嵌入了一些UIViewControllers
. 这些控制器可能有不同的preferredStatusBarStyle
.
我使用 aUIViewControllerAnimatedTransitioning+UIPercentDrivenInteractiveTransition
在使用 a 的控制器之间切换UIScreenEdgePanGestureRecognizer
。
我注意到,如果我在两个不同preferredStatusBarStyle
的控制器之间开始转换并取消转换,状态栏样式不会返回到第一个控制器首选项,但仍会保留到第二个控制器首选项。显然,如果我使用标签栏项目完成转换或在控制器之间切换,状态栏样式会正确更改。
我尝试调用setNeedsStatusBarAppearanceUpdate()
every viewWillAppear
,但状态栏没有改变。
我知道我可以使用 setter 更改状态栏样式UIApplication.shared.statusBarStyle
,但现在已弃用此方法。
我还尝试更改过渡动画,但问题并没有消失。
奇怪的是,preferredStatusBarStyle
“from”视图控制器的 ,当取消转换时,设置为正确的值,但显示为相反!
ios - 状态栏使用 Capacitor 覆盖 iOS 上的 webview
我想实现与电容器示例相同的状态栏行为,即自动添加正确的填充,这样我的应用程序内容就不会显示在状态栏中。但是,我不使用离子框架,而是角度和状态栏覆盖我的应用程序的 web 视图。因此,我的应用程序的内容在状态栏中可见。
我期待一种允许改变这种行为的方法(作为离子本机状态栏的 _overlaysWebView_ 方法)。我也尝试添加config.xml<preference name="StatusBarOverlaysWebView" value="false" />
文件,但我不知道是否应该安装 cordova 状态栏插件。
也许我不应该更改此配置而只使用填充,但是我不知道如何处理不同 iOS 设备上的不同状态栏高度。
我是 Capacitor 的新手,我从未使用过 Ionic 或 Cordova。我有人可以帮我解决这个问题,我将不胜感激。
ios - 在 iOS 中的 UIViewController 之间导航时,安全区域受限的视图会被放大,状态栏切换为隐藏/取消隐藏
就像标题所说的那样,当您尝试在 UIViewController 之间导航同时切换状态栏隐藏/取消隐藏时,会出现意外行为,即安全区域受限视图在 iOS 上被放大。
可在此处找到可重现的项目。
我想知道这是否是iOS中的错误。希望有人能解释为什么会发生这个问题以及我们如何解决它。
更新:
对于上面的“放大”部分:在 UIViewController 的导航过程中,
问题只发生在5 次中的 2-3 次,因此您可能需要多加注意才能注意到它。
放大的部分是:绿色背景和两个白色框。
请注意,视图在导航前后保持相同的大小。
此外,在项目中,您可能希望连续点击“按钮”和“关闭”按钮,以便快速切换,轻松发现问题。
swift - 状态栏样式更新有一些延迟
我StoryBoard
的项目中有 2 个,ViewController
第一个storyBoard
中的.lightContent
statusBarStyle
所有都是.ViewController
storyBoard
.default
statusBarStyle
为此,我已经完成了以下步骤。
1.View controller-based status bar appearance
是true
2 已经使用下面的代码。
当我storyBoard
ViewController
从第一个storyBoard
statusBar 样式更改中将 2nd 设置为 rootController 但我面临以下问题。
当我将第一个故事板设置ViewController
为 rootController 时,状态栏样式会在几秒钟后更新。
不合适
几秒钟后
这是我的演示链接:https ://www.dropbox.com/s/ijqg73zm1jxbokc/statusBarDemo.zip?dl=0
更新
我的第一个 ViewController 代码
我的第二个 ViewController 代码
请指导我缺少什么或我错误地实施了什么。任何帮助将不胜感激。谢谢
ios - 如何使用 SwiftUI 在没有 SceneDelegate 的情况下更改每个视图的 iOS 状态栏颜色
我已经看到过去使用 SceneDelegate 解决问题的答案,现在已经被 Swift 的新生命周期删除。这个问题有更新的解决方案吗?
相关过时的问题:SwiftUI:状态栏颜色
使用 SwiftUI 更改每个视图的 iOS 状态栏颜色(时间、手机覆盖范围、wifi 等)。