禁用“个人热点”通知



启用个人热点下推视图和相关子视图下推。如何以程式方式停用个人热点通知?(我怎么能限制iPhone状态栏的原始大小,即使在热点上?)

我很晚才发现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;
}

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

苹果的文档并没有很好地描述状态栏,特别是当你使用热点,地图,呼叫等时出现的第二行

即使有多个正在运行,也只有一个额外的行。

我不知道第三方应用程序是如何出现的,但提问者特别提到了个人热点,这是一个系统服务。

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

你可能不得不以"艰难"的方式去做。您应该隐藏主状态栏,然后绘制自己的自定义状态栏。

BTW, Apple说不要这样做:

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

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

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

状态栏初始隐藏:

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

[application setStatusBarHidden:NO];

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

相关内容

  • 没有找到相关文章

最新更新