Ios 如果按下返回键,如何停止方法调用
我有一个iphone应用程序,其中我在Ios 如果按下返回键,如何停止方法调用,ios,iphone,uitextfield,Ios,Iphone,Uitextfield,我有一个iphone应用程序,其中我在textfieldshouldturn上调用code one,在didEndEditing上调用另一个 我希望当用户按return键时,应用程序不应调用didEndEditingcode,如果用户不按return键,则调用 -(void)textFieldDidEndEditing:(UITextField *)textField { if (textField==tagTextField) { [self showAnimationB
textfieldshouldturn
上调用code one,在didEndEditing
上调用另一个
我希望当用户按return键时,应用程序不应调用didEndEditing
code,如果用户不按return键,则调用
-(void)textFieldDidEndEditing:(UITextField *)textField
{
if (textField==tagTextField) {
[self showAnimationBack];
}
if (textField.tag==2 && [valueReturn isEqualToString:@"Yes"]) {
if (textField.text.length > 0 || ![tagTextField.text isEqualToString:@""]) {
[textField resignFirstResponder];
[tagArray addObject:tagInputField.text];
[tableView reloadData];
tableView.frame = CGRectMake(tableView.frame.origin.x, tableView.frame.origin.y, tableView.frame.size.width, tableView.contentSize.height);
[tableView.layer setCornerRadius:7.0f];
[tableView.layer setMasksToBounds:YES];
tableView.layer.borderWidth = 0.5;
tableView.layer.borderColor = [UIColor grayColor].CGColor;
[self showAnimationBack];
}
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
if(textField.tag == 2)
{
if (textField.text.length > 0 || ![tagTextField.text isEqualToString:@""]) {
[textField resignFirstResponder];
[tagArray addObject:tagInputField.text];
[tableView reloadData];
tableView.frame = CGRectMake(tableView.frame.origin.x, tableView.frame.origin.y, tableView.frame.size.width, tableView.contentSize.height);
[tableView.layer setCornerRadius:7.0f];
[tableView.layer setMasksToBounds:YES];
tableView.layer.borderWidth = 0.5;
tableView.layer.borderColor = [UIColor grayColor].CGColor;
[self showAnimationBack];
}
}
当用户按return键时,我也将其称为return
- (void)keyboardDidHide:(NSNotification *)aNotification {
valueReturn=@"Yes";
}
使用
isEditing
值,因为当按下返回键时,您(可能)会从第一响应者退出文本视图,textfielddendediting
发生时,文本字段应处于非编辑模式。我不确定这样做是否正确,但您可以尝试一下。在textfield中声明变量isReturnPressed
并将其设置为YES
应返回:
并在textfielddendediting:
中设置为NO
。因此,您可以按如下方式检查条件
-(void)textFieldDidEndEditing:(UITextField *)textField
{
if (isReturnedPressed == NO) {
// Do your stuff
}
else {
isReturnedPressed = NO
}
}
希望这有帮助。请格式化您的代码。