问题标签 [uinavigationbarappearance]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4880 浏览

ios - 如何在 iOS 13 中使用 UINavigationBarAppearance

你如何使用这个新对象来自定义 iOS 13 中的导航栏?我在 Objective-C 中尝试了以下代码,但它无法正常工作。它仅在视图控制器被推送或弹出到导航堆栈时显示我的标题文本属性。

这是此对象的文档。 https://developer.apple.com/documentation/uikit/uinavigationbarappearance?language=objc

0 投票
3 回答
955 浏览

ios - UINavigationBar 后退按钮标题无法使用 iOS 13 的导航栏外观删除

在我的应用程序中,我想删除UINavigationBar后退按钮标题。我已经完成了以下代码

但是,此代码始终适用于iOS 10-12,但不适用于iOS 13。我错过了什么吗?

在其他情况下,我找到了很多关于该主题的答案,但没有找到解决方案iOS 13

我从不想使用 to set back button title as an empty string,而不是使用外观来修复它。

谢谢

0 投票
2 回答
4168 浏览

uinavigationbar - 在 ios 13 中设置后退按钮箭头色调的正确方法是什么

在 ios 13 中,Apple 引入了新的 UINavigationBarAppearance 代理对象来设置导航栏的外观。我已经能够设置几乎所有我需要的东西,除了一件小事。后退按钮的箭头始终以蓝色色调呈现,我不知道如何将其设置为我想要的颜色。我正在使用旧[[UINavigationBar appearance] setTintColor:]方法,但我认为必须有一些方法可以使用 UINavigationBarAppearance 对象 API 来实现。有人知道怎么做吗?

0 投票
2 回答
371 浏览

swift - NavBar 上的后退按钮上的字体(Swift)

我可以调整导航栏外观的所有其他方面 - 但“返回”的字体仍然很顽固。

下面的 MWE 显示了我尝试过但无济于事的四件事

1)

2) 3) 4)

类 customNavigationController: UINavigationController {

}

0 投票
1 回答
74 浏览

ios - 如何使用 UINavigationBarAppearance 设置自定义后退箭头图像的颜色?

我有一个 iOS 应用程序,它使用自定义后退 V 形符号作为导航栏中的后退按钮,具有自定义背景颜色和阴影等。我想将该背面指示器图像的颜色设置为默认蓝色以外的颜色。如何使用新的UINavigationBarAppearanceAPI 做到这一点?

我努力了:

  • 将背面指示器图像设置为我的形状的模板图像 - 这有效,但不影响颜色。
  • 设置titleTextAttributesnormal变体buttonAppearance,指定NSForegroundColorAttributeName
  • 设置,titleTextAttributes的所有变backButtonAppearanceNSForegroundColorAttributeNameNSBackgroundColorAttributeName
  • 直接在导航栏上设置tintColor- 这会影响新导航项动画期间的后退指示器,但在动画结束时它会变回蓝色。
0 投票
4 回答
4287 浏览

ios - iOS 13 导航栏大标题问题

我试图在 a 中显示一个大TitleNavigation bar,但背景清晰。向上滚动时,它将Navigation bar具有模糊效果。

在此处输入图像描述

在此处输入图像描述

这看起来是正确的,但是,在滚动时,动画似乎被破坏了。此外,过渡有时会卡住:

在此处输入图像描述

在此处输入图像描述

我的代码如下:

UINavigationController

是在UITableView里面UINavigationController。两者都来自故事板,通过 segue 方式。

0 投票
1 回答
178 浏览

ios - 由于奇怪的 UINavigationBar 视图层次结构,自定义 UINavigationBar 不起作用

我的应用程序有许多被推送到导航堆栈上的 ViewController。

我已经在 AppDelegate 中全局配置了 UINavigationBar 外观,如下所示。

除了只有一个 ViewController 之外,所有 ViewController 都按预期工作。

以下是按预期工作的 VC 之一。它显示了我想要的颜色和字体。

在此处输入图像描述

下面是显示不同外观的 ViewController。

在此处输入图像描述

我不明白为什么这个 VC 上只有一个导航栏显示不同的外观。

所以我已经完成了调试视图层次结构。

下面是按预期工作的 VC 的视图层次结构。

在此处输入图像描述

下面是显示奇怪外观的 VC 视图层次结构。

在此处输入图像描述

如图所示,有问题的 NavigationBar 多了两层,UIVisualEffectView 和 UIVisualEffectBackdropView。

我是一位经验丰富的 iOS 开发人员,不知道为什么会发生这种情况。

我仔细检查了IB上与NavigationBar相关的所有设置,但发现与其他设置没有区别。

我什至删除了 ViewController,完全嵌入 NavigationController 并从头开始重建它们,但没有运气。

请有人解释一下为什么只有这个 NavigationBar 有不同的结构。

我正在使用 iOS 13.3 和 Xcode 11.3.1

0 投票
1 回答
268 浏览

ios - 尝试修改 SwiftUI 导航栏文本属性的运行时崩溃

我正在尝试修改 SwiftUI 中的导航栏文本属性(以添加文本阴影)并且碰壁试图了解为什么我在模拟器中收到运行时崩溃。还有另一个线程(参考:下文)能够解决使用 init() 修改外观来更改字体类型的问题,但是尝试使用 init 修改 Text("") 方法以添加阴影会导致崩溃。
我还尝试将 Text("NavBarTitle") 提取到它自己的方法中,然后应用修饰符(那里没有运气)。如我的代码所示,我尝试将文本提取到变量中导致崩溃。即使只是直接应用修饰符也会导致崩溃。

我在 SwiftUI 方面没有足够的经验来称其为错误,但它确实感觉像一个错误。
提前感谢您的帮助!

参考:https ://stackoverflow.com/a/57632229/1514009

0 投票
0 回答
27 浏览

swift - 状态栏文本颜色不会更改为浅色内容

我的应用程序中的状态栏文本颜色存在问题,使用时不会改变

我想为 HomeViewController 指定 StatusBar 文本颜色的颜色,我尝试了很多但仍然是同样的问题。

我在我使用的这个函数中有自定义UINavigationBarAppearance :

我正在使用 jonkykong 的 SideMenu,这是我使用的功能:

在此处输入图像描述

在此处输入图像描述

0 投票
3 回答
2228 浏览

ios - 当 NavigationBar 为大标题时不应用 barTintColor

我正在更新一个在 Xcode 10 上编译并在 iOS 13 上运行良好的应用程序。我想做一些更改,所以在 Xcode 11 上重新编译,现在 barTintColor 出现问题。

如果“Large Titles”设置为“Always”,我的自定义 barTintColor 不会被应用——我只是得到默认的灰色。如果“大标题”设置为“从不”,我的自定义 barTintColor 将按预期应用。如果“大标题”设置为“自动”,则显示大标题时导航栏默认为灰色,显示小标题时为我的自定义颜色。比如我的nav bar下面的TableView被推上去的时候,默认的大标题切换到小标题,我的NavBar变色。正常行为是它始终是我的自定义颜色。

我的 ViewController 类中的相关代码,最后一行是设置 barTintColor 的代码:

知道为什么行为会改变,以及如何解决吗?