【发布时间】:2011-12-06 20:41:39
【问题描述】:
我有一个包含几个UITextFields 的视图。我还有一个高级UISegmentController 可以改变视图。当我在字段中输入文本,然后按隐藏键盘按钮,然后更改分段时,它保存得很好。但是当我输入文本,并且不按下释放键盘按钮,然后切换段时,它不会保存文本。
我该如何解决这个问题?
这是我自定义的UITableViewCell 中UITextField 的一些代码:
- (IBAction)col2_doubleValueChanged:(id)sender
{
NSString *newValue = [NSString stringWithFormat:@"%@/%@", self.col2_doubleEntryValue_1.text, self.col2_doubleEntryValue_2.text];
NSMutableDictionary *result = [[[NSMutableDictionary alloc] init] autorelease];
[result setValue:self.row_key forKey:@"row_key"];
[result setValue:@"1" forKey:@"column"];
[result setValue:newValue forKey:@"col2_value"];
[[self delegate] editDidFinish:result];
[[self delegate] valueChanged];
}
- (IBAction)col2_singleValueEditDidBegin:(id)sender
{
}
编辑:
- (void)valueChanged
{
self.dirtyFlag = 1;
}
- (int)saveDataToServer
{
[self.tableView resignFirstResponder];
if (!dirtyFlag) {
return 0;
}
NSString *errors = [DataSource updatePatientWorkflowClinicalChecklistForAppointment:[[[DrChronoDataSource getCurrentAppointment] valueForKey:@"appointment_id"] intValue] clinicalInfo:self.clinicalChecklist checklistId:[self.clinicalChecklistId intValue] patientWorkflowServerId:patientWorkflowServerId];
if ((NULL == errors) || ![errors isEqualToString: @""]) {
//Show error messages.
if (NULL == errors) {
errors = @"Failed to save data to server. Please retry.";
}
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Status" message:errors delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
return -1;
} else {
[self dismissModalViewControllerAnimated:FALSE];
}
self.dirtyFlag = 0;
return 0;
}
【问题讨论】:
-
您需要提供用于处理和存储文本的代码
标签: iphone objective-c cocoa-touch uitextfield uisegmentedcontrol