问题标签 [navigationitem]

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 投票
0 回答
90 浏览

swift - iOS13.3下如何创建高度大于40像素的navigationItem.titleView?

使用 Swift 5.1.3、iOS13.3、XCode11.3、

我尝试创建一个自定义的 navigationBar Title 并使用 navigationItem.titleView 来做到这一点。

如果自定义 titleView 尺寸小(大约 40-45 像素),一切正常。原因很可能是因为navigationItem 左右按钮的尺寸也很小。

但是,我的 naviagionBar 设置为一个大标题,我想放置一个更高的自定义 titleView 来填充那个大空间。

我找到了很多自定义 naviagationItem.titleView 的答案(例如下面的代码)。但不幸的是,这些解决方案对更高的高度没有帮助!

这是小高度的解决方案:

如果高度为 150 或 250,则此解决方案不起作用 - 特别是如果自定义 titleView 包含按钮。该按钮不再可单击,因为在自定义 titleView 的下边缘不再识别单击事件!

问题1:如果将item放在大高度自定义navigationItem.titleView中,按钮点击事件将不再被识别。

问题 2:当从 detail-VC 导航回包含大标题自定义 navigationItem.titleView 的 VC 时,我们的自定义 titleView 将完全消失。

如何克服问题 1 和 2 - 这就是这里的问题。感谢您对此的任何帮助。

PS 这是所需结果的说明。navigationItem.titleView 是自定义的,包含一个带有两个元素的stackView(即title-Text 和一个黄色圆形按钮)。自定义的titleView应该放在navigationBar的最底部,但仍然克服了上面描述的问题1和2!

在此处输入图像描述

0 投票
1 回答
75 浏览

swift - NavigationBar prefersLargeTitle 不起作用

使用 iOS 13.3,

我观察到导航栏的奇怪行为。如果向上拖动,则导航栏会收缩。(见视频)

不要担心作为导航栏一部分的选项卡。没有它们也会发生奇怪的行为。而且 ViewController 在模态表中呈现的事实也无关紧要 - 奇怪的收缩行为也发生在经典视图中。到目前为止,我只从 SearchBar 中了解到这种收缩行为。但这里没有这样的东西。

如何始终将导航栏保持在固定的大尺寸?

在此处输入图像描述

我试过没有成功....

0 投票
1 回答
439 浏览

ios - 我想在 SwiftUI 中隐藏导航栏并只显示后退按钮

导航栏标题已隐藏。在这种状态下如何显示后退按钮?

当您执行以下操作时,顶部会出现一个空白。此外,如果滚动,将显示一个栏。

在此处输入图像描述

0 投票
1 回答
527 浏览

swift - 在 Xcode 11.4 中更改导航项的标题颜色

我无法更改导航项的标题颜色。这是一个支持 iOS 10.0+ 的旧项目。

设置标题:

有人更改了故事板中导航栏的属性titleColor(在 中Title Text Attributes)。现在它不起作用了。这很奇怪,因为它适用于 Xcode 11.3.1,但不适用于 Xcode 11.4。

尝试更改标题颜色:

  1. navigationController?.navigationBar.titleTextAttributes = [ NSAttributedString.Key.foregroundColor: UIColor.mainGold ](我也在这里尝试了不同的键)

  2. navigationController?.navigationBar.tintColor = UIColor.mainGold(也尝试过barTintColor:D)

我试图将它添加到viewDidLoad,viewDidAppear

我用UINavigationBar.appeareance()in试过了AppDelegate。它适用于一个空项目。它也适用于我的第一个视图控制器中的导航项标题。

我的项目中有很多屏幕,并且有些东西会阻止更改标题颜色。导航项的标题颜色始终为白色(深色主题)或黑色(浅色主题)。

它确实让我感到困惑。

视图层次结构的屏幕截图。UILabel LUXURIES是导航项的标题: 在此处输入图像描述

0 投票
1 回答
56 浏览

swift - 从弹出窗口返回时如何重置导航栏项目?

我有一个导航栏,其中有两个按钮作为右栏按钮项,标题视图中有一个文本字段。如果我点击文本字段,会弹出一个搜索屏幕,我可以在文本字段中输入文本。文本字段中的文本将在下面的代码中设置“resultText”变量。按钮项,包括 filterItem 和 mapItem,与@IBOutlet 连接良好。

当文本字段不为空时,我想隐藏右栏按钮项。使用下面显示的代码,当我在文本字段中输入文本时,它最初可以正常工作。但是,当我删除文本字段中的文本然后从弹出窗口返回时,应用程序崩溃,因为发现按钮项为零。我不明白为什么它是零。我在这里错过了什么吗?

0 投票
1 回答
82 浏览

swiftui - 在 SwiftUI 的 UINavigationItem 按钮中添加返回图标和“返回”文本

我有一个按钮,我希望它有 < 后退图标和返回文本。这就是我所做的:

我收到此错误:

实例方法 'appendInterpolation' 要求 'Image' 符合 '_FormatSpecifiable'

我尝试将其修复为:

但它不起作用。我该如何解决。

0 投票
1 回答
75 浏览

swiftui - 我无法在 SwiftUI 中将 NavigationItemTitle 覆盖到 TabView

我是 SwiftUI 的新手。我有一个 ContentView,因为我添加了 NavigationView 并从该 NavigationView 重定向到另一个具有 TabView 的视图。

这里是 HomePage.swift 的代码

MapView.swift 的代码在这里

我的错误是:当我将全局标题设置为 TabView 属性时, .navigationBarTitle("Settings")总是反映。但是我想要这样,如果我将 NavigationTitle 设置为子视图,那么它将显示在该子视图中。当我们点击 Map Item 时,我需要这样 NavigationTitle 应该Map。当我们将导航标题应用于子项时,我无法找到错误为什么它不起作用。

任何帮助都应该感激。提前致谢。

0 投票
0 回答
61 浏览

ios - BackBarButton 文本在取消隐藏后被截断

当通过文本在 NavigationBar 中隐藏和稍后取消隐藏 backButton(不是常规的 left/rightBarButtonItem)时navigationItem.hidesBackButton = true/false,中间会被截断。

将手机的文本大小(动态字体大小)设置为最小值(或第二小),否则不起作用。

示例:后退按钮显示前一个控制器的标题,例如< Settings。隐藏并再次显示后退按钮后,它现在说< Se...gs

有什么已知的解决方法吗?