首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以将操作从选项卡栏的一个页面连接到另一个页面?

问是否可以将操作从选项卡栏的一个页面连接到另一个页面?
EN

Stack Overflow用户
提问于 2011-09-20 10:25:52
回答 3查看 52关注 0票数 0

我正在尝试将选项卡栏一页上输入的内容转换到另一页...例如,选项卡栏标签的第1页-文本字段(插入内容)生成......标签栏的第2页....标签栏的第3页...无论插入的是什么

如果有可能发生这样的事情请告诉我...提前谢谢你!

EN

回答 3

Stack Overflow用户

发布于 2011-09-20 10:32:15

是的,这是可能的。事实上,有几种方法可以做你想做的事情。从你描述你想要做什么的方式来看,我建议你看看NSNotificationCenter。基本上,当您设置视图控制器时,第二个和第三个视图控制器可以注册以接收某种通知。当文本字段的内容发生变化时,第一个视图控制器将“发布”一个通知。第二个和第三个将接收通知,然后更新其内容。

编辑:

代码语言:javascript
复制
//register for a notification.  Whenever the notification is sent, mySelector: is called on self (probably done whe thn second and third controller are loaded)
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(mySelector:) name:@"NotificationName" object:nil];

//send a notification (done when the first view controllers action is finished)
[[NSNotificationCenter defaultCenter] postNotificationName:@"NotificationName" object:obj];
票数 1
EN

Stack Overflow用户

发布于 2011-09-20 11:03:25

另一种方法是将app委托作为帮助。在appdelegate中创建一个属性,例如userName。在你想要访问的视图中导入appdelegate类。使用其属性在一个视图中进行存储,并在另一个视图中进行检索。您可以访问appdelegate单例实例属性,如下所示

代码语言:javascript
复制
((yourAppDelegate*)[[UIApplication sharedApplication] delegate]).userName = @"Set Value";

在另一个视图的viewWillAppear中:

代码语言:javascript
复制
self.greetingLabel.text = ((yourAppDelegate*)[[UIApplication sharedApplication] delegate]).testString;

可能不是最优雅的解决方案,只是实现结果的另一种方式。

票数 0
EN

Stack Overflow用户

发布于 2011-09-20 11:05:28

如果我正确理解了您的问题,请检查此SO 问题的答案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7479401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档