我正在使用xcode创建一个应用程序,我在浏览视图之间传递数据时遇到了麻烦
我想设置详细视图,日历的日期。然后,当我回到主视图时,我想在所选日期看到事件,但我不知道如何制作它。
你能帮助我吗?
答案 0 :(得分:1)
这是你在两个班级之间进行交流的方式
ViewController *dvController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:[NSBundle mainBundle]];
// ViewController is controler where you want to send date from particular controler we are making object of ViewController where you want to send data
dvController.selectedBirthdate = selectedbirthdate;
dvController.selectedName = selectedname;
//you are sending data in above two lines just imagine you are sending string
[self.navigationController pushViewController:dvController animated:YES];
//then pushviewcontroller and there you go
[dvController release];
简单就是那个
还有另一种方法可以在两个类之间进行通信,即app委托制作你的应用委托的对象,然后将你想要的东西分配给app委托的特定变量,然后你可以在项目的任何地方使用该变量
像这样创建app委托对象
YourAppDelegate *appDelegate = (YourAppDelegate *)[[UIApplication sharedApplication] delegate];
//and then access the variable by appDelegate.variable
如果您使用的是故事板,则可以使用下面的prepareForSegue
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:...]) {
MyViewController *controller = (MyViewController *)segue.destinationViewController;
controller.myProperty1 = ...;
controller.myProperty2 = ...;
}
}
答案 1 :(得分:0)
基本上有两种最常见的方法:
1)如果你在项目中使用故事板,请使用unwind segue。这种方法在这里得到了很好的讨论:
2)使用委托模式。当我开始学习授权时,我发现下面的教程非常有用:
http://www.roostersoftstudios.com/2011/04/12/simple-delegate-tutorial-for-ios-development/