【问题标题】:My app painting over the iPhone status bar我的应用在 iPhone 状态栏上绘画
【发布时间】:2015-12-03 14:16:40
【问题描述】:

今天我制作了我的第一个应用程序版本,可以在 iPhone 上运行。当我这样做时,我看到它在状态栏位于屏幕顶部的区域上绘制,但状态栏也被绘制,因此两者混合。

我确实尝试将构建的隐藏状态栏属性设置为 true,但结果相同。

我真正想要的是我的应用应该保留状态栏并对其进行绘制,而不是状态栏所在的位置。

如何在 Codenameone 中做到这一点?

【问题讨论】:

    标签: iphone statusbar codenameone


    【解决方案1】:

    iOS 7 及更高版本希望您的应用在状态栏下方绘制,这是 Apple 的设计选择,作为开发人员,您应该为状态栏留出空间。

    iOS 上的默认原生主题有一个在顶部填充的 StatusBar UIID 样式,但如果您选择删除 includeNative 主题常量或删除该填充,这将无法按预期工作。

    【讨论】:

    • 那么,如果我使用 includeNative = false 那么我必须留出一些空间吗?有没有办法知道需要多少空间?
    • 另外,我使用主题的标题功能为我的所有屏幕提供标题图片(根据您回答我的另一个 stackoverflow 问题)。如果我需要为状态栏放置一些空间,有什么办法可以使标题区域的大小更大,以便我可以同时容纳图片和空间?
    • 我们留下 3mm,您可以在样式中配置或使用Display.convertToPixels 方法。我不记得那个问题了,但通常你可以在它上面添加一个在非 iOS 平台上大小为 0 的元素,并在 iOS 上按照你想要的方式填充空间。请注意,我们建议使用 includeNative=true 隐藏此类问题...
    • 好的,现在我正在尝试使用 includeNative=true 似乎没问题。但我还有一个问题。我的每个屏幕背景的样式都有一个背景颜色。标题图片上方的区域被涂成白色。我可以将其设置为透明,以便将 iPhone 状态栏绘制在我的背景颜色之上吗?
    • 设置TitleArea UIID 的样式,方法是设置其边框为空、透明度为 0 或设置颜色。
    猜你喜欢
    • 1970-01-01
    • 2014-11-16
    • 2010-09-28
    • 1970-01-01
    • 2014-01-28
    • 1970-01-01
    • 2011-01-26
    • 1970-01-01
    相关资源
    最近更新 更多