问题标签 [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.

0 投票
3 回答
219 浏览

ios - 更改 StatusBar 背景颜色和preferredStatusBarStyle 的最佳方法应该是什么?

我的要求是,在我的应用程序中有两个流程,因此对于两个流程的首选状态栏样式和状态栏背景颜色的值是不同的。因此,如果我有 40 viewControllers,则 20 个 VC 的值相同,而 20 个 VC 的值与前 20 个值不同。

现在我正在更改每个视图控制器中的值,如下所示:-

在 info.plist 我这样做了:-

你们能告诉我任何方式,这样我就可以只在两个地方编写这些代码行,我就可以达到我的要求。

0 投票
1 回答
129 浏览

ios - 取消控制器动画转换时不正确的preferredStatusBarStyle

我有一个UITabViewController嵌入了一些UIViewControllers. 这些控制器可能有不同的preferredStatusBarStyle.

我使用 aUIViewControllerAnimatedTransitioning+UIPercentDrivenInteractiveTransition在使用 a 的控制器之间切换UIScreenEdgePanGestureRecognizer

我注意到,如果我在两个不同preferredStatusBarStyle的控制器之间开始转换并取消转换,状态栏样式不会返回到第一个控制器首选项,但仍会保留到第二个控制器首选项。显然,如果我使用标签栏项目完成转换或在控制器之间切换,状态栏样式会正确更改。

我尝试调用setNeedsStatusBarAppearanceUpdate()every viewWillAppear,但状态栏没有改变。

我知道我可以使用 setter 更改状态栏样式UIApplication.shared.statusBarStyle,但现在已弃用此方法。

我还尝试更改过渡动画,但问题并没有消失。

奇怪的是,preferredStatusBarStyle“from”视图控制器的 ,当取消转换时,设置为正确的值,但显示为相反!

0 投票
2 回答
4313 浏览

ios - 状态栏使用 Capacitor 覆盖 iOS 上的 webview

我想实现与电容器示例相同的状态栏行为,即自动添加正确的填充,这样我的应用程序内容就不会显示在状态栏中。但是,我不使用离子框架,而是角度和状态栏覆盖我的应用程序的 web 视图。因此,我的应用程序的内容在状态栏中可见。

我期待一种允许改变这种行为的方法(作为离子本机状态栏的 _overlaysWebView_ 方法)。我也尝试添加config.xml<preference name="StatusBarOverlaysWebView" value="false" />文件,但我不知道是否应该安装 cordova 状态栏插件。

也许我不应该更改此配置而只使用填充,但是我不知道如何处理不同 iOS 设备上的不同状态栏高度。

我是 Capacitor 的新手,我从未使用过 Ionic 或 Cordova。我有人可以帮我解决这个问题,我将不胜感激。

0 投票
1 回答
60 浏览

ios - 在 iOS 中的 UIViewController 之间导航时,安全区域受限的视图会被放大,状态栏切换为隐藏/取消隐藏

就像标题所说的那样,当您尝试在 UIViewController 之间导航同时切换状态栏隐藏/取消隐藏时,会出现意外行为,即安全区域受限视图在 iOS 上被放大。

可在此处找到可重现的项目。

我想知道这是否是iOS中的错误。希望有人能解释为什么会发生这个问题以及我们如何解决它。

更新

对于上面的“放大”部分:在 UIViewController 的导航过程中,
问题只发生在5 次中的 2-3 次,因此您可能需要多加注意才能注意到它。
放大的部分是:绿色背景和两个白色框。
请注意,视图在导航前后保持相同的大小。

此外,在项目中,您可能希望连续点击“按钮”和“关闭”按钮,以便快速切换,轻松发现问题。

0 投票
1 回答
104 浏览

ios - 防止视图控制器在状态栏下扩展

我有一个视图控制器,它是导航控制器的 rootVc。

我需要为 rootview 控制器隐藏导航栏,因此我使用以下方法隐藏它并使其重新出现。

我基本上将导航栏隐藏在 rootVc 中并为所有其他视图控制器显示它。

但是当我删除 NavBar 时,我看到我的内容在状态栏下扩展

有没有办法来解决这个问题?

在此处输入图像描述

0 投票
2 回答
176 浏览

xamarin.forms - Xamarin Forms - 跨平台更改状态栏颜色

我有一个 xamarin 表单应用程序,并且能够更改导航栏的颜色。如何跨平台更改状态栏颜色?在下图中,您可以看到绿色的导航页栏背景颜色。上面是蓝色的,我想改变它的颜色。如何以 xamarin 形式实现此跨平台?

在此处输入图像描述

0 投票
1 回答
132 浏览

swift - 状态栏样式更新有一些延迟

StoryBoard的项目中有 2 个,ViewController第一个storyBoard中的.lightContent statusBarStyle所有都是.ViewControllerstoryBoard.default statusBarStyle

为此,我已经完成了以下步骤。

1.View controller-based status bar appearancetrue

2 已经使用下面的代码。

当我storyBoard ViewController从第一个storyBoardstatusBar 样式更改中将 2nd 设置为 rootController 但我面临以下问题。

当我将第一个故事板设置ViewController为 rootController 时,状态栏样式会在几秒钟后更新。

不合适

在此处输入图像描述

几秒钟后

在此处输入图像描述

这是我的演示链接:https ://www.dropbox.com/s/ijqg73zm1jxbokc/statusBarDemo.zip?dl=0

更新

我的第一个 ViewController 代码

我的第二个 ViewController 代码

请指导我缺少什么或我错误地实施了什么。任何帮助将不胜感激。谢谢

0 投票
2 回答
64 浏览

android - 如何更改状态栏的颜色?(安卓和IOS)

对不起,大局。

我做了一些研究,包括在 stackoverflow 上,但我发现的选项没有成功。

在此处输入图像描述

0 投票
0 回答
60 浏览

ios - 如何使用 SwiftUI 在没有 SceneDelegate 的情况下更改每个视图的 iOS 状态栏颜色

我已经看到过去使用 SceneDelegate 解决问题的答案,现在已经被 Swift 的新生命周期删除。这个问题有更新的解决方案吗?

相关过时的问题:SwiftUI:状态栏颜色

使用 SwiftUI 更改每个视图的 iOS 状态栏颜色(时间、手机覆盖范围、wifi 等)。

0 投票
1 回答
28 浏览

ios - 为什么我的状态栏在 Xcode 几秒钟后消失了?

当我在模拟器或设备上运行我的应用程序时,我的状态栏(时间、电池、服务)在启动屏幕期间可见大约 2 秒,然后消失并且不再出现。

我在 info.plist 文件中尝试了许多变体,更改View controller-based status bar appearanceYESNO. 尝试不同Status bar styleStatus bar is initially hidden组合。我不知道我哪里出错了。

编辑:我已经重建了整个应用程序作为故障排除,但它仍然做同样的事情。有谁知道我还能尝试什么?我花了两天时间寻找答案。

有人可以帮帮我吗?在此处输入图像描述