UITextField への入力として、UIActionSheet 内に UIDatePickerView があります。UITextField にフォーカスすると、キーボードの代わりに UIActionSheet がポップアップします。UIActionSheet の完了ボタンをクリックすると、非表示になります。他のいくつかのテキスト フィールドを通常どおりに動作させています (キーボードの表示)。
- (void)textFieldDidBeginEditing:(UITextField *)textField {
if ([textField isEqual:txtExpDate]) {
[textField resignFirstResponder];
[self showDatePicker];
}
}
- (void) showDatePicker{
UIActionSheet *datePickerActionSheet = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:nil destructiveButtonTitle:@"Done" otherButtonTitles:nil];
datePickerView = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 80, 0, 0)];
datePickerView.datePickerMode = UIDatePickerModeDate;
[datePickerActionSheet addSubview:datePickerView];
[datePickerActionSheet showInView:self.navigationController.view];
[datePickerActionSheet setBounds:CGRectMake(0, 0, 320, 500)];
[datePickerActionSheet release];
}
今私の問題は、最初のユーザーが通常のテキストフィールドをタップするとしましょう。キーボードがポップアップします。次に、完了ボタンを選択せずに、日付フィールドをタップします。アクションシートをポップアップします(キーボードを閉じることなく)。アクションシートを非表示にした後、ユーザーは他のテキスト フィールドをタップし、キーボードのリターン キーをクリックする必要があります。
アクションシートがポップアップする場合、キーボードを非表示にしたいですか?