将变量传递给不同的视图控制器

时间:2009-01-17 14:57:23

标签: cocoa-touch

我进行了搜索和搜索,但没有任何效果。

我正在尝试将文本值从文本框设置为字符串或其他任何内容,以便稍后我可以在不同的视图控制器中调用它。我似乎无法让它发挥作用!

我也希望结转数字,比如货币。

关于他们的任何想法?

干杯。

5 个答案:

答案 0 :(得分:6)

您可以在另一个视图控制器上创建一个实例变量,在推/弹视图之前保留或复制该值。例如:

OpenNextViewController *varNextPageController = [[OpenNextViewController alloc] initWithNibName:@"OpenNextViewController" bundle:nil];
varNextPageController .textString= self.textString;
[[self navigationController] pushViewController:varNextPageController animated:YES];
[varNextPageController release];

在此示例中的“OpenNextViewController”中有一个实例变量“textString”,用于保留或复制(根据您的需要)您的文本。

答案 1 :(得分:3)

花一些时间试图理解Model View Controller模式。

在您的情况下,您可能希望在共享通用模型的不同视图之间共享数据。模型是数据的存储,在您的情况下是文本值。

答案 2 :(得分:0)

你的问题有点模糊。你能否提供更多细节? 听起来就像你想知道的那样:

  1. 如何从控件中获取值。对于文本字段,应该有一个text属性,您可以从中获取值。

  2. 如何在控制器之间共享值。不确定你的意思。 控制器通常使用模型作为数据的权威版本,协调不同视图之间的值共享。

  3. 同样,如果您可以更具体,我们可以提供更多帮助

答案 3 :(得分:0)

如果你想在多个控制器中使用它,那么我认为你需要在模型中运行它?

答案 4 :(得分:0)

你们是否认为使用AppDelegate作为一个模型的持有者从根本上是错误的?我的意思是AppDelegate很容易被所有控制器看到,因此很容易绑定并获取/设置它的属性。

POM