我有一個應用於DatePicker的文本字段的UITableViewCell。我需要製作一個自定義按鈕來保存日期。但是每當我選擇任何UITableViewCell TextField時,都會出現按鈕。爲什麼是這樣?爲什麼這個按鈕出現在所有UITextField選項中?
我只是試圖「提交」它的文本字段,所以我可以保存它。
感謝
- (void)textFieldDidBeginEditing:(UITextField *)dateFieldText
{
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc]
initWithTitle:@"Save Date"
style:UIBarButtonItemStyleDone
target:self
action:@selector(flipView)];
self.navigationItem.rightBarButtonItem = doneButton;
UIDatePicker *datePicker = [[UIDatePicker alloc] init];
datePicker.datePickerMode = UIDatePickerModeDateAndTime;
[datePicker addTarget:self action:@selector(datePickerValueChanged:) forControlEvents:UIControlEventValueChanged];
[self.dateFieldText setInputView:datePicker];
}
更新
使用的if else塊解決我的問題。
- (void)textFieldDidBeginEditing:(UITextField *)sender
{
sender.delegate = self;
if([sender isEqual:dateFieldText])
{
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc]
initWithTitle:@"Save"
style:UIBarButtonItemStyleDone
target:self
action:@selector(saveDate)];
self.navigationItem.rightBarButtonItem = doneButton;
UIDatePicker *datePicker = [[UIDatePicker alloc] init];
datePicker.datePickerMode = UIDatePickerModeDateAndTime;
[datePicker addTarget:self action:@selector(datePickerValueChanged:) forControlEvents:UIControlEventValueChanged];
[self.dateFieldText setInputView:datePicker];
}
else{
UIBarButtonItem *submitButton = [[UIBarButtonItem alloc]
initWithTitle:@"Done"
style:UIBarButtonItemStyleDone
target:self
action:@selector(submitList)];
self.navigationItem.rightBarButtonItem = submitButton;
}
}
感謝您的幫助。
因爲該方法是「textFieldDidBeginEditing:」。您已將自己作爲所有單元格文本字段的代表。這是它添加按鈕,當你開始在文本字段中輸入 – 2013-03-04 01:34:09