我剛剛更新到iOS 8,我的應用程序有問題,除了操作工作表上的日期選取器。當爲了顯示操作表而將操作選擇爲與子視圖一起添加的日期選擇器時,應用程序會崩潰。我發現這個問題的代碼,其是:UIDatePickerView問題,因爲更新到ios 8
-(void)willPresentActionSheet:(UIActionSheet*)actionSheet{
theDatePicker = [[UIDatePicker alloc]initWithFrame:CGRectMake(0, 40, 320, 216)];
[actionSheet addSubview:theDatePicker];
NSArray *subviews = [actionSheet subviews];
[[subviews objectAtIndex:0]setFrame:CGRectMake(20, 266, 280, 46)]; //this line
[[subviews objectAtIndex:1]setFrame:CGRectMake(20, 317, 280, 46)]; //also this one
}
控制檯日誌產生這樣的:
-[__NSArrayM objectAtIndex:]: index 1 beyond bounds [0 .. 0]'
以前我解決了它(嚴重)通過改變每個索引2 & 3,其工作,但是一個凌亂的實施。
這是實際執行:
-(void)willPresentActionSheet:(UIActionSheet*)actionSheet{
theDatePicker = [[UIDatePicker alloc]initWithFrame:CGRectMake(0, 40, 320, 216)];
[actionSheet addSubview:theDatePicker];
NSArray *subviews = [actionSheet subviews];
[[subviews objectAtIndex:0]setFrame:CGRectMake(20, 266, 280, 46)];
[[subviews objectAtIndex:1]setFrame:CGRectMake(20, 317, 280, 46)];
}
-(void)datePickerViewFromInput:(NSString*)title{
SheetPicker=[[UIActionSheet alloc]initWithTitle: title delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Set", nil];
[SheetPicker showInView:self.view ];
[SheetPicker setFrame:CGRectMake(0,117, 325, 383)];
theDatePicker.datePickerMode = UIDatePickerModeDate;
NSDateFormatter *Formatter = [[NSDateFormatter alloc]init];
[Formatter setDateFormat:@"MM/dd/yyyy"];
}
如果我刪除的問題代碼,動作片將顯示,但已不再是一個日期選擇器。 (我不知道爲什麼)
有關如何解決此問題的任何想法?
在此先感謝
輝煌,謝謝。 – TinMan7757 2014-09-19 10:13:47