烦人的问题,正在将数据发送到其他视图控制器

问题描述 投票:0回答:1

我正在使用Kal Calendar,我需要使用户能够插入行,这是另一回事了。

通过将其类分配给视图控制器来应用Kal日历,并生成视图。

因此,我决定制作一个插入栏,用户可以在其中单击并发送到另一个视图控制器,在该控制器中他可以插入一个值。

但是为此,我需要添加一个条,所以我在主视图控制器的容器中添加了Kal,因此可以通过情节提要添加条。

http://imageshack.us/photo/my-images/838/zahm.png/

因此,现在,当用户单击+按钮时,我需要将选定的日期移到“插入”视图控制器上。

问题是我似乎无法传递该值,我尝试了一些differnet方法,并且得到了空值。

在Kal ViewController内,此处打印了“选定日期”,并在ViewDidLoad上将其触发,因此可以确保设置它。

- (void) calendarMonthView:(TKCalendarMonthView*)monthView didSelectDate:(NSDate*)date{
NSLog(@"Date Selected: %@",date);

    self.dateSelected = date; // i set it for the property here

    [self.tableView reloadData];
}

因此,我尝试通过在Kal日历中创建插入视图的实例并在其中设置日期来实现,但是我发现如果我通过情节提要进行定居,将使用另一个实例。

关于做什么的任何建议?也许以完全不同的方式进行设置..?

我正在使用Kal Calendar,我需要使用户能够插入行,这是另一回事了。通过将其类分配给视图控制器来应用Kal Calendar,它会生成...

ios objective-c
1个回答
1
投票

您通过容器视图获得的控制器是子视图控制器,因此您可以使用self.childViewControllers [0]从父级(其视图中具有容器视图的控制器)对其进行引用。在您的情况下,好像ViewControllerCalendar是父级,而CalendarMonthViewController是子级,其中具有dateSelected属性。如果从+按钮到ViewControllerInsert的模式选择是正确的,那么您应该能够在prepareForSegue:sender:中将日期传递给该控制器,就像这样(此代码将在您的容器控制器ViewControllerCalendar中):

© www.soinside.com 2019 - 2024. All rights reserved.