首页 文章

我必须保留UIDatePicker模态视图中的日期吗?

提问于
浏览
0

我正在从我的UIDatePicker视图中崩溃,我认为这是因为我没有保留选择日期的选择器 . 谁能告诉我这是否正确?

我有一个用于选择 toDatefromDate 范围的模态视图 . 这些值将被传递到模态视图中,并在视图被解除时从视图中删除 . 视图有一个UIDatePicker和一个分段按钮,用于在to和from日期之间切换 .

每次分段控制开关时,我都会将选择器日期设置为匹配日期或从日期开始 . 当选择器值更改时,我会相应地更新to或from日期 . 在这些日期之间进行几次切换后,视图崩溃 .

我猜测当我将拣选日期的值从 toDate 设置为 fromDatetoDate 正在释放,所以当我将拣货员切换回 toDate 时,它会崩溃 .

另外,要在视图外使用选择器中的选定日期,是否需要保留日期,因为选择器将随日期一起被释放?

这对任何人都有意义吗?

2 回答

  • 1

    如果您需要从UIDatePicker获取日期值,如果您要在函数范围之外使用它(例如,通过多个AutoreleasePool循环),您确实需要保留副本 .

    从UIDatePicker获取日期将保留引用,但它将自动释放,因此只有在自动释放池被销毁之后才有效 .

    完成后,请务必发布您的参考 .

    只需在函数内暂时使用它,您就不需要像上面所述那样保留它 .

  • 0

    为什么不将viewvcontroller或其他类的属性设置为使用日期:

    self.date = date;

    使用retain属性将日期定义为@property . 这样你就可以在应用程序的其他地方使用日期,并且当你通过runloop时它不会被自动释放 .

相关问题