私はアラームアプリを作成しています。をタップしたときに表示UIDatePicker
したい。UIActionSheet
UITextField
user2289379
質問する
9737 次
3 に答える
8
これを行うには、実装する必要があり、アクションシートを次のように表示する必要がありますUIActionShetDelegate
。UITextFieldDelegate
textFieldDidBeginEditing
-(void)textFieldDidBeginEditing:(UITextField *)sender
{
[self showAction];
}
-(void) showAction
{
UIActionSheet *asheet = [[UIActionSheet alloc] initWithTitle:@"Pick the date." delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Select", nil];
[asheet showInView:[self.view superview]];
[asheet setFrame:CGRectMake(0, 117, 320, 383)];
[asheet release];
}
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet
{
UIDatePicker *pickerView = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 40, 320, 216)];
//Configure picker...
[pickerView setMinuteInterval:5];
[pickerView setTag: kDatePickerTag];
//Add picker to action sheet
[actionSheet addSubview:pickerView];
[pickerView release];
//Gets an array af all of the subviews of our actionSheet
NSArray *subviews = [actionSheet subviews];
[[subviews objectAtIndex:SelectButtonIndex] setFrame:CGRectMake(20, 266, 280, 46)];
[[subviews objectAtIndex:CancelButtonIndex] setFrame:CGRectMake(20, 317, 280, 46)];
}
于 2012-08-23T16:40:30.923 に答える
5
ピッカーでテキストフィールドを使用する場合、テキストフィールドの入力ビューをセットアップし、利便性のために独自のツールバーを追加するのが最も簡単であることがわかりました。「UITextFieldDelegate」とピッカーメソッドが設定されていることを確認してから、そのように接続します。
yourtextfield.delegate = self;
[yourtextfield setInputView:yourpickerview];
[yourtextfield setInputAccessoryView:doneBar];
doneBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
[doneBar setBarStyle:UIBarStyleBlackTranslucent];
UIBarButtonItem *spacer2 = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
target:nil
action:nil];
[doneBar setItems: [NSArray arrayWithObjects:spacer2, [[UIBarButtonItem alloc]
initWithTitle:@"Done"
style:UIBarButtonItemStyleDone
target:yourtextfield
action:@selector(resignFirstResponder)],nil ] animated:YES];
しかし、アクションシートを使用したい場合は、これが基本的なセットアップです:
于 2012-08-23T16:41:50.157 に答える
2
入力ビューUIDatePicker
として設定できます ( )。ActionSheet にはボタンのみを含めることができます。UITextField
@property inputView
于 2012-08-23T16:30:53.937 に答える