如何在切换时在UITabBar视图之间传递数据?

时间:2014-01-29 12:48:09

标签: ios uiview uitabbar

我有3个UITabBar项目控制3个UIViews。其中一个是名为A的设置视图,我在此视图中设置了一些值,并将输入的值传递给另一个名为B的视图。现在我已经有了Delegate方法但我使用了一个按钮来传递数据。现在我想在选择View B的UITabBar项时自动传递它。从A到B,不是相互的。谢谢。

3 个答案:

答案 0 :(得分:1)

为什么不使用NSUserDefaults。我已将字符串从一个视图传递到另一个视图

下面是您应该在ViewController A的DidLoad()方法中编写的代码

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setValue:@"xyz" forKey:@"name"];
[defaults synchronize];

要在ViewController B的DidLoad()方法中编写的代码

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *temp = [defaults valueForKey:@"name"]; 
NSLog(@"temp == %@",temp);

答案 1 :(得分:0)

你听说过

吗?
  

单身

它们用于在Obj-c中的类之间共享数据。有关如何设置它们的指南,请参阅:

http://www.galloway.me.uk/tutorials/singleton-classes/

这将有助于保持您的课程分离,并强制执行OO方法来共享您的数据。

编辑:

我通过快速谷歌搜索发现该网站,有太多的资源可以帮助你解决这个问题。

答案 2 :(得分:-2)

试试这个

NSArray *viewControllers = self.tabBarController.viewControllers;
ViewControllerB *b = viewControllers[1];
b.yourValue = yourValue;