我有一个基于导航的应用程序。当我点击一个表格的行时,下一个视图出现,返回按钮(手动创建)出现。现在我想知道如何在当前视图中获取先前视图的对象,以便使用先前视图的对象更改之前视图的标签文本之一?导航对象
谢谢。
我有一个基于导航的应用程序。当我点击一个表格的行时,下一个视图出现,返回按钮(手动创建)出现。现在我想知道如何在当前视图中获取先前视图的对象,以便使用先前视图的对象更改之前视图的标签文本之一?导航对象
谢谢。
可以传递的价值推动第二视图必要的变量之前
secondViewController.variable = firstViewController.variable;
然后推secondViewController
更新: 使用布尔变量willBePoppedBack
为类变量,并将其设置为NO
开始。
- (void)viewWillAppear {
if(willBePoppedBack)
{
// your label text after pressing back button
}
else {
// your label's default text
}
}
你应该设置变量willBePoppedBack
到YES
当你推到下一个视图。
如果你想做到这一点,你需要在这里,然后通过前面的视图的对象。操作员可以访问首页标签并在其上写入一些内容。
FirstView *obj=[[[FirstView allo] initWithNibName:@"FirstView"] autorelease];
[email protected]"Text";
编辑:
你需要在AppDelegate类一的NSString财产,然后作出应用程序的委托对象,并设置该字符串要标签 上的价值,现在流行的观点,并在viewWillAppear中使用此字符串在标签上书写。
它必须工作。
通过传递tableviews对象来初始化第二个视图,检查下面的链接,并使用类似的方法来实现您的需求。
我要访问的第一个视图的对象为第二视图,当我点击我的自定义后退按钮。 – Maulik 2011-03-10 06:41:54
你可以在第一个视图的viewWillAppear中做到这一点。 – visakh7 2011-03-10 06:43:57
我尝试了你说的,但是改变反映在第一次加载时。 ñ我想要做的是当我点击第二个视图的按钮然后n然后只有改变应该出现。 – Maulik 2011-03-10 06:51:53