0

我可以将整数值传递给另一个类,但是日期呢?我正在使用以下代码传递整数:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"toStep2"]) {
        Step2ViewController *detailViewController = [segue destinationViewController];

        NSLog(@"text : %@",self.wrp.text);
        //This is the id infoRequest, which is a pointer to the object
        //Look at the viewDidLoad in the Destination implementation.
        detailViewController.infoRequest = self.wrp.text;
    }
}

我的问题是用户在我的 Step1 类中输入了带有 UIDatePicker 的日期,但是如何将日期传递给 Step2 类?任何帮助,将不胜感激。

4

6 回答 6

1

只需在 Step2ViewController 中声明另一个 NSDate 属性,然后像设置 infoRequest 一样设置它

于 2013-02-19T05:01:03.397 回答
0

在 Step2ViewController 中创建一个 NSDate 属性,并在 Step1 类中为该 Step2 日期实例设置 UIDatePicker 日期。

使用此链接了解更多详情:

http://www.scott-sherwood.com/ios-5-storyboards/

于 2013-02-19T05:16:54.143 回答
0

您可以在 step2 类 (@property(nonatomic, retain) NSDate *step2Date;) 中获取日期类型的属性。在转换到 step2 类时,将 datePicker 值分配给 step2 类中的 date 属性。

step2ClassObject.step2Date = datePicker.date;

于 2013-02-19T05:07:36.713 回答
0

由于 UIStoryboardSegue 同时提供了 sourceViewController 和destinationViewController,您可以从存储在源中的属性中获取任何值并将其放入目标中的属性中。使用 NSUserDefaults 在控制器之间传输日期并不是最好的选择,因为它将存储在闪存上的会话之间,并且实际上不是为此目的而构建的。

于 2013-02-19T05:07:55.270 回答
-1

当您希望它们可以在类或其他视图控制器之外访问时,您将创建属性。

以这种方式创建属性。@property (nonatomic, 保留) NSString *strData; 然后你也可以在其他视图控制器中使用这个数组值。

属性替换了对象的访问器方法。

参考this question's answer我的回答

于 2013-02-19T05:10:04.837 回答
-1

您可以使用

[[NSUserDefaults standardUserDefaults] setObject:lastUpdated forKey:@"dateUpdated"];

存储日期,您可以在下一堂课中使用:

[[NSUserDefaults standardUserDefaults] objectForKey:@"dateUpdated"];

有关更多详细信息,请回复我

于 2013-02-19T05:04:10.497 回答