问题标签 [backbarbuttonitem]

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 投票
4 回答
210 浏览

ios - BackBarButton 不会显示正确的标题

我正在尝试将我的 backButton 设置为一个简单的“<”,如下所示:

打印会显示“”,但在模拟器上运行我的应用程序总是会显示上一个VC的标题。

虽然我测试过

将改变按钮的颜色。

笔记:

我正在从一个UIViewController嵌入UINavigationController 到一个UIViewController

0 投票
1 回答
484 浏览

ios - 在 iOS 中将 self.navigationItem.backBarButtonItem 与设备左侧对齐

我尝试的是,将图像添加到 UIBarButtonItem 并将 UIBarButtonItem 设置为默认的 backBarButtonItem。

以下是我的代码;

问题是,后栏按钮项目和左边距之间有相当大的空间。我在图像上用红色突出显示了它。

在此处输入图像描述

我想以编程方式减少这种差距。我怎样才能做到这一点。

我尝试了下面的代码,但什么也没发生。

0 投票
1 回答
705 浏览

ios - 按下导航栏中的后退按钮并弹出视图 B 后,更新位于视图 B 后面的视图 A

我有两个视图 A 和 B 为了从 A 到 B 我只是在推送新视图,在视图 BI 中执行一些操作来更新导航栏的 UIBarButton 项的 badgeValue。(就像将商品添加到购物车一样)

图片 30

当我使用导航栏后退按钮返回查看 A 时,UIBarButton 项显示前一个标记值,而不是更新的标记值,我猜这是因为当您按下返回按钮时,视图 B 会弹出,显示视图 A,它保持原样没有任何更改,所以我需要一种方法来告诉视图 A 在返回后更新自身。

图 29

如果不是返回查看 AI 而是返回 rootViewController 更新了 badgeValue,我猜当我转到 rootViewController 时,会读取 viewDidLoad 中的代码并更新 badgeValue。

关于如何更新刚刚弹出的另一个视图背后的任何想法?

编辑

@silicon_valley 的答案是正确的,但它不适用于 MikeMTOL 的库,因为它有问题,对于 Swift 用户,我会推荐这些扩展。->链接

0 投票
1 回答
12560 浏览

swift - 左栏按钮项目 - 显示前一个视图控制器的名称

如果您有一个没有 Bar Button Items 的 Navigation Controller,则会显示一个带有最后一个 View Controller 名称的导航返回按钮

我想保留这个名字,因为我不想硬编码它。我确实知道如何添加它,但我不想这样做,因为这为错误留下了更多空间。

有没有一种方法可以让我拥有一个左栏按钮项目并且默认的项目不会消失?

0 投票
1 回答
1496 浏览

swift - 处理返回按钮 NavigationController 以推送到另一个 ViewController

我目前正在处理这样的流程:首先在我按下 LoginVC 上的登录按钮 -> 推送到 WebViewVC -> 在 NavigationBar 上按下返回按钮 -> 推送到还包含 webViewVC 的 TabbarVC,我的意思是 webViewVC 是 TabbarVC 的选项卡. 所以我想知道如何处理后退按钮以推送到 TabbarVC,而不是返回到 LoginVC。在这里,我将附上我的屏幕流程:

在此处输入图像描述

左上角是 WebViewVC。非常感谢!

0 投票
1 回答
307 浏览

ios - 按返回栏按钮项重新加载集合视图

我的应用程序中有一个collectionView,当用户点击其中的一个单元格时,collectionView将重新加载数据,详细地说,我有一个专辑,当用户选择其中一个时,它可以包含另一个专辑,它会在其中显示专辑。

现在我想当用户点击backBarButton过去的数据时出现在collectionView(超级专辑)上,但现在backbarButton显示过去的 VC。

我使用 navigationController 并在 VC 之间显示模块 segues。

问:我应该如何实施?

0 投票
0 回答
336 浏览

ios - iOS 11 NavigationBar 后退按钮问题

我在基本 ViewController viewDidLoad 中设置了 backbarbutton,如下所示:

但我有一个小图标,但位置不正确 在此处输入图像描述

谁能给我一些提示,我花了一整天的时间来解决这个问题,但无法得到任何想法。

0 投票
2 回答
113 浏览

ios - 如何向 UIBarButtonItem 添加自定义操作

我有一个嵌入到 NavigationCoroller 中的 viewController (HomeViewController()),我的 viewController 底部有一个带有 6 个单元格的水平 CollectionView,并且我已经实现了委托方法didSelectItemAt indexPath: IndexPath

现在,当我选择任何一个单元格时,它将导航到相应的 viewController( self.navigationController?.pushViewController(ViewControllerInstance, animated: true)) 让我们将其称为“NewVC1()”,因为我正在使用 pushViewController,它会为我创建一个后退按钮,如果我点击后退按钮它会弹回之前的 viewController。这是一般情况并按预期工作。

在我的情况下,在“HomeViewController()”中选择 collectionViewCell 后,我将进入“NewVC1()”,在那里我拥有与之前的 viewController(HomeViewController()) 相同的 CollectionView,现在如果我选择任何当前 viewController(NewVC1()) 中的单元格我将导航到相应的 viewController(NewVC2()),就像使用 pushViewController 之前一样,现在,如果我单击“NewVC2()”中的后退按钮,我不会想去“NewVC1()”,而不是去“HomeViewController()”。我怎样才能做到这一点,有没有可能这样做?

我希望你能理解我想要表达的意思,如果你听不懂我糟糕的英语,我很抱歉,也很抱歉,因为我认为这个问题看起来很混乱..

编辑:

象征性地:

let VC1 = HomeViewController() let VC2 = NewViewController1() let VC3 = NewViewController2()

导航:VC1 -> VC2 -> VC3 如果想回到 VC1,

一般情况:

VC3 -> VC2 和 VC2 -> VC1(可能)

我的情况:

VC3 -> VC1 (?)

0 投票
0 回答
1014 浏览

ios - NavigationBar中的iOS 10后退按钮宽度

问题: backBarButtonItem在 iOS 10 中有额外的空间。

iOS 11 iOS 10iOS 11 IOS 10

从上面的图片可以看出。iOS 10 中的后退按钮有一个额外的空间。

根据这个消息来源

这个来源

我的实现

在 AppDelegate 中

在视图控制器中

我想在 iOS 10 中实现与 iOS 11 相同的 UI。

0 投票
1 回答
407 浏览

ios - 如何让后退栏按钮项目显示在 iOS 的导航项目中?

我无法在导航控制器的根视图控制器的导航项中显示后退栏按钮项。

我尝试设置不同的属性。

像这样的其他问题并没有给我一个有效的答案。

她是我在根视图控制器中的代码: