2017-01-24 11 views
2

アクションシート内にUIDatePickerを表示しようとしていますが、機能していません。アクションシート内のUIDatePickerが機能しない

ここに私のコードです。ボタンをクリックしてこのコードを書いた

UIAlertController *alertController = [UIAlertController alertControllerWithTitle:nil message:@"\n\n\n\n\n\n\n\n" preferredStyle:UIAlertControllerStyleActionSheet]; 

UIView *datePickerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 200)]; 
[datePickerView setBackgroundColor:[UIColor clearColor]]; 

CGRect pickerFrame = CGRectMake(0, 0, self.view.frame.size.width, 200); 
UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:pickerFrame]; 
[datePicker setDatePickerMode:UIDatePickerModeDate]; 

[datePickerView addSubview:datePicker]; 
[alertController.view addSubview:datePicker]; 

UIAlertAction* alertAction = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault               handler:^(UIAlertAction * action) { 


}]; 

[alertController addAction:alertAction]; 

[self.view.window.rootViewController presentViewController:alertController animated:YES completion:nil]; 

[alertAction setValue:[UIColor redColor] forKey:@"titleTextColor"]; 

これは更新されたコードです。それが正常に動作しますが、デバイスで動作しているシミュレータで実行中にOKボタンピッカーをクリックしようとしますが、私はできませんUIActionSheetとして

+0

http://stackoverflow.com/questions/349858/fitting-a-uidatepicker-into-a-uiactionsheet上記のリンクで与えられた – remyr3my

+0

回答が働いていなかった助けてくれてありがとうのデバイスで正常に動作します私のために。そのアクションシートを表示しますが、Picker @ Cyph3rは表示しません –

答えて

0

最後に、私は解決策を得ました。このコードは...

UIAlertController *alertController = [UIAlertController alertControllerWithTitle:nil message:@"\n\n\n\n\n\n\n\n" preferredStyle:UIAlertControllerStyleActionSheet]; 

UIDatePicker *datePicker = [[UIDatePicker alloc] init]; 

CGRect pickerFrame = datePicker.frame; 
pickerFrame.size.height = datePicker.frame.size.height - 50; 
datePicker.frame = pickerFrame; 

[datePicker setDatePickerMode:UIDatePickerModeDate]; 
[alertController.view addSubview:datePicker]; 

UIAlertAction* alertAction = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault               handler:^(UIAlertAction * action) { 

}]; 

[alertController addAction:alertAction]; 

[self.view.window.rootViewController presentViewController:alertController animated:YES completion:nil]; 
0

は次のものが必要iOS 8.3で廃止され、連続的にスクロールされてOKボタン(uialertaction)...]をクリックしますすることができますあなたの画面にDatePickerを追加するためのドキュメントとガイドラインをアップルと一緒に提供しました。

Appleは、(カレンダーアプリの日付ピッカーのような)インラインの日付ピッカーの使用を導入しました。

インライン日のためのgithubのコードの下に使用しピッカー

リンク:参考https://github.com/DylanVann/DatePickerCell

iOS 7 - How to display a date picker in place in a table view?

関連する問題