如何知道我之前在 iOS 中的标签栏视图控制器是哪个?
Posted
技术标签:
【中文标题】如何知道我之前在 iOS 中的标签栏视图控制器是哪个?【英文标题】:How to know which was my previous tab bar view controller in iOS? 【发布时间】:2014-05-08 21:03:40 【问题描述】:假设我有 4 个标签栏视图控制器。在第三个标签栏视图控制器中执行功能后,我以编程方式进入第二个标签栏视图控制器。当我到达第二个标签栏视图控制器时,我怎么知道我来自第三个标签栏视图控制器?
【问题讨论】:
【参考方案1】:您可以通过UITabBarControllerDelegate
方法轻松跟踪:
例如,您可以实现tabBarController:shouldSelectViewController:
并检查标签栏控制器的selectedIndex
或selectedViewController
属性(仍将包含 old 值,因为该方法在更改之前被调用)。
或者,您可以只实现 tabBarController:didSelectViewController:
并自己跟踪最后选择的视图控制器/索引。
但请记住,这两种方法仅在用户启动标签更改时调用,而不是那些以编程方式完成的。
【讨论】:
以上是关于如何知道我之前在 iOS 中的标签栏视图控制器是哪个?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iOS 中检索数据并将数据传递给标签栏控制器的子视图?
标签栏(视图控制器)中多次调用ios的通知中心方法方法?如何删除观察者?