ios – 两个不同的视图控制器如何相互通信

ios – 两个不同的视图控制器如何相互通信,第1张

概述我有一个带标签栏的应用程序和3个不同的View Controller.其中一个imanage是我通过Interface Builder(storyboard)设计的UItableView,我在Inspector中设置了它的视图控制器类 – >检查员身份 – >我在那里设置了类字段,因此,当这个视图控制器被实例化时,我无法控制,因为当用户点击标签栏时,它通过故事板完成.注意,我是客观C和iOS编程的 我有一个带标签栏的应用程序和3个不同的VIEw Controller.其中一个imanage是我通过Interface Builder(storyboard)设计的UItableVIEw,我在Inspector中设置了它的视图控制器类 – >检查员身份 – >我在那里设置了类字段,因此,当这个视图控制器被实例化时,我无法控制,因为当用户点击标签栏时,它通过故事板完成.注意,我是客观C和iOS编程的新手.

我面临的问题,我也在使用远程通知.因此,当我在AppDelgate类的“dIDReceiveRemoteNotification”中收到远程通知消息时.我需要更新UI界面(在VIEwController之上),但问题是我没有从我的AppDelgate类到这个VIEwController的引用(指针)(或者我?).这个VIEwController由storyboard实例化的问题也没有以编程方式实现,否则我可以保留对它的引用.

我做了一些阅读,我知道我可以通过NSNotification进行这种沟通,但我认为这对于一个可能出现的问题来说是一种矫枉过正,因为我是新手,而且我对iOS开发并不完全了解.

谢谢,

解决方法 您的app Delegate将有一个指向应用程序窗口的窗口属性.

Window Property有一个-rootViewController属性/方法.

对于基于选项卡的应用程序,它将返回TabVIEwController.

每个TabVIEwController都有一个方法-(NSArray *)viewControllers,它返回Tab中的VIEwControllers.这些按顺序排列.

访问您的应用程序AppDelegate使用[[UIApplication sharedApplication]委托]

一旦你拥有了这些vIEwcontrollers,你就会知道自从你将它们添加到XIB文件中以后所有这些都是vIEwController.并可以执行您的方法

总结

以上是内存溢出为你收集整理的ios – 两个不同的视图控制器如何相互通信全部内容,希望文章能够帮你解决ios – 两个不同的视图控制器如何相互通信所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1005068.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存