3

启用个人热点下推视图和相关子视图下推。如何以编程方式禁用个人热点通知?(即使 HOT SPOT 开启,我如何将 iPhone 状态栏限制为原始大小?)

4

4 回答 4

1

我发现Personal Hotspot 不仅在状态栏上增加了20 点,而且还弄乱了依赖动画师中重力放置点的视图。我添加了在布置视图之前检查状态栏高度的代码。如果不是20,那么可能是热点,所以我只是隐藏状态栏。不是一个理想的解决方案,但到目前为止有效。

- (BOOL)prefersStatusBarHidden {
    if ([UIApplication sharedApplication].statusBarFrame.size.height == 20) {
        NSLog(@"Status bar is 20 so returning NO for hidden");
        return NO;
    }
    NSLog(@"Status bar is not 20 so returning YES for hidden");
    return YES;
}
于 2015-04-01T11:14:01.327 回答
0

如果您禁用状态栏,则自动禁用热点栏。

于 2014-05-15T10:16:29.383 回答
0

Apple 文档对状态栏的描述不是很好,尤其是。使用热点、地图、通话等时出现的第二行。

即使不止一个在运行,也只有一个额外的行。

我不知道第 3 方应用程序是如何出现的,但提问者专门询问了个人热点,这是一项系统服务。

我怀疑显示器可以由任何人控制,除非用户关闭服务。

您可能必须以“硬”的方式进行操作。您应该隐藏主状态栏,然后绘制自己的自定义状态栏。

顺便说一句,Apple 说不要这样做:

使用系统提供的状态栏。人们希望状态栏在系统范围内保持一致。不要用自定义状态栏替换它。

https://developer.apple.com/ios/human-interface-guidelines/bars/status-bars/

于 2017-09-24T21:10:04.760 回答
0

这是一种替代方法,但它有效。首先在项目的 Info.plist 中包含一个新键:

状态栏最初是隐藏的:

然后,在您的 AppDelegate 中,didFinishLaunchingWithOptions您可以设置:

[application setStatusBarHidden:NO];

这将在启动屏幕期间隐藏热点栏,然后在应用程序启动时再次显示它。

于 2018-02-07T12:17:21.113 回答