You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Kivy iOS应用中显示状态栏?

如何在Kivy iOS应用中显示状态栏?

我之前也踩过这个坑,光靠设置Window.fullscreen = False确实搞不定iOS的状态栏,因为苹果这边有自己的状态栏管控逻辑,结合Kivy的配置和Xcode的设置,给你几个亲测有效的解决办法:

  • 通过Kivy配置提前设置
    要在Kivy的UI组件初始化前就配置相关参数,这样才能生效。在你的应用入口代码最顶部加上这些:

    from kivy.config import Config
    
    # 关闭全屏模式
    Config.set('kivy', 'fullscreen', '0')
    # 强制显示iOS状态栏
    Config.set('kivy', 'ios_statusbar_hidden', '0')
    # 可选:设置状态栏为半透明,Kivy会自动调整内容区域避免被遮挡
    Config.set('kivy', 'ios_statusbar_translucent', '1')
    

    注意一定要把这段代码放在from kivy.app import App或者from kivy.core.window import Window这类导入之前,不然配置可能不会被正确加载。

  • 修改Xcode项目的原生配置
    有时候Kivy的配置会被Xcode的项目设置覆盖,所以手动调整Xcode里的设置更稳妥:

    1. 打开Kivy导出的Xcode工程
    2. 找到项目根目录下的Info.plist文件,右键选择“Open As -> Source Code”,添加或修改这两行:
      <key>UIStatusBarHidden</key>
      <false/>
      <key>UIViewControllerBasedStatusBarAppearance</key>
      <true/>
      

    或者更简单的,在Xcode的“General”标签页里,找到“Deployment Info”区域,取消勾选“Hide status bar”,同时把“Status Bar Style”设置为你需要的样式(比如Default或Light Content)。

  • 用原生API强制唤起状态栏(进阶方法)
    如果上面的方法都没效果,可以通过pyobjus直接调用iOS的原生API来控制状态栏,不过需要你的项目集成了pyobjus(buildozer导出时可以在配置里加上requirements = pyobjus):

    from kivy.app import App
    from pyobjus import autoclass
    
    def force_show_statusbar():
        # 调用iOS原生API显示状态栏
        UIApp = autoclass('UIApplication')
        UIApp.sharedApplication().setStatusBarHidden_(False)
        # 触发状态栏外观更新
        UIViewController = autoclass('UIViewController')
        vc = UIViewController.alloc().init()
        vc.setNeedsStatusBarAppearanceUpdate()
    
    class MyKivyApp(App):
        def on_start(self):
            # 应用启动后调用
            force_show_statusbar()
    
    if __name__ == '__main__':
        MyKivyApp().run()
    

另外提醒一下,如果你的应用内容被状态栏挡住了,记得开启ios_statusbar_translucent = 1,Kivy会自动给窗口顶部加上内边距,确保内容不会被状态栏覆盖。

备注:内容来源于stack exchange,提问作者Connor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 15:42:57