我有一个日期选择器来计算年龄。当我第一次选择日期时,它会显示正确的o / p,但下次选择日期时 - 应用程序崩溃。
我的代码:
NSDate *selected = [date1 date];
NSDateFormatter *df=[[NSDateFormatter alloc] init];
float interval=[selected timeIntervalSinceNow] * -1.0;
float year=interval/31556926;
if (year>10)
{
alert.tag=0;
alert=[[UIAlertView alloc]initWithTitle:@"Calculate Age" message:@"Congratulation!!!!Your Age Is Grater Than 10" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Ok", nil];
[alert show];
[alert release];
}
` 日志: 在意外状态下完成导航过渡。导航栏子视图树可能已损坏。 2012-07-02 13:38:19.568 loginDemo [1848:f803]非平衡调用开始/结束外观转换。 2012-07-02 13:38:30.658 loginDemo [1848:f803] - [__ NSCFType setTag:]:无法识别的选择器发送到实例0x68dd0d0 2012-07-02 13:38:30.660 loginDemo [1848:f803] *由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [__ NSCFType setTag:]:无法识别的选择器发送到实例0x68dd0d0' * 首先抛出调用堆栈:
` 我没有使用UIPickerDelegate,因为这里不需要委托方法。在此,当我点击警报视图的“确定”按钮时,应该完成转换。
答案 0 :(得分:0)
只需将alert.tag = 0
行放在可解决问题的alert = [[UIAlertView alloc]....
行下方。
同时将标记值更改为其他0
,因为xib中的所有视图默认都包含标记值0
。