通过使用以下方法消除UINavigationbar与另一个视图之间的黑色字符串的秘诀是什么?

问题描述:

我有UINavigationbar并在它下面查看。 enter image description here通过使用以下方法消除UINavigationbar与另一个视图之间的黑色字符串的秘诀是什么?

,当我说下面的字符串消失

UINavigationBar.appearance().shadowImage = UIImage() 
    UINavigationBar.appearance().setBackgroundImage(UIImage(), for: 
    .default) 

说明为什么?

每看起来一旦你的文档设置了setBackgroundImage它将覆盖与自定义执行的ShadowImage。在导航栏上查看shadowImage它会显示:

“/ * 默认值为零当非零时,显示自定义阴影图像而不显示默认阴影图像对于要显示的自定义阴影, forBarMetrics:自定义背景图片也必须-setBackgroundImage设置。(如果使用默认背景图片,默认的阴影图像将使用) */

@property(空的,非原子,强)的UIImage * shadowImage NS_AVAILABLE_IOS(6_0)UI_APPEARANCE_SELECTOR;“

因此,您正在用空白图像覆盖默认图像,然后在您调用它时移除默认阴影或字符串。

+0

如果你正确理解你,当我设置backgroundImage与空白视图然后shadowimage删除,因为设置空白视图的backgroundimage属性? –

+0

因为视图是透明的吗? –

+0

默认视图对它有阴影效果。当你实现自己的自定义视图时,它将删除该行或“字符串”,因为它试图实现自定义视图。但在你的情况下,你说的自定义视图只是一个空白的UIView实例,仅此而已。如果你的UIView有更多的内容并且定义了额外的内容,它会显示出来。 –

您能否告诉我们字符串放在哪里?

它可能是字符串与背景颜色相同的颜色。

我们可以调试字符串是否实际存在于使用调试检查器的UI层次结构中,并且启用了显示剪辑内容(这有助于我们知道任何剪辑视图存在)。我附上截图供您参考。

View inspector

+0

此字符串位于主页按钮下方,我不使用故事板 –

+0

请您详细说明一下。你正在谈论的字符串是导航标题? – Leela