gpt4 book ai didi

ios - 如何通知导航 Controller 它应该从 n 层的 subview 中推送 View Controller ?

转载 作者:行者123 更新时间:2023-11-29 03:40:45 25 4
gpt4 key购买 nike

我有一个想要在不同情况下重用的 View 。这是一个用户 View ,当触摸时, View Controller 将推送用户详细信息 View Controller 。

所以基本上我有一个 View ,可以有任意数量的 super View ,直到 View Controller 。我希望该 View 能够通知当前显示的任何 View Controller 以推送用户详细信息 View 。

除了使用 NSNotificationCenter 之外,还有其他方法可以做到这一点吗? NSNotificationCenter 是我的最佳选择吗?我尝试过放入协议(protocol)/委托(delegate),但这对我来说不起作用。

谢谢!

------------------------回复评论----------------

我希望它是动态的。这部分是我的问题。我将在整个代码中使用此 View ,当我进行更新/更改时,我不想必须更改实际的用户 View 才能使事情正常工作

一个示例是在以下层次结构中添加此用户 View :viewcontroller->tableview->tableviewcell->userview。但我还想像这样添加它:viewcontroller->userview。

最佳答案

navigationController.topViewController 在这种情况下可能会有所帮助。或者,如果您的应用程序使用单个导航堆栈,您可以在 appDelegate 中处理此通知

@interface AppDelegate
@property (nonatomic, strong) UINavigationController *nav;
...
[nav pushViewController:userVC animated:YES];

我认为在这种情况下使用 NSNotification 确实有意义。根据 MVC,处理触摸事件的 UIView 不需要了解太多有关它所在的 View Controller 层次结构的信息。通知可以处理该问题。

关于ios - 如何通知导航 Controller 它应该从 n 层的 subview 中推送 View Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18502338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com