ios - 当使用 NSArray 中的字符串时,如何让 UITextField 推送到新的 ViewController?

标签 ios objective-c uitextfield nsarray

我创建了一个 UITextField调用textField , 一个 NSArray称为 keywordsArray 的字符串和一个提交按钮。

我想要发生的是,如果用户的文本输入到 UITextField包含 keywordsArray 中的字符串之一它会推送到一个 View Controller ,否则它会推送到另一个 View Controller 。

现在我的代码如下所示:

self.keywordsArray=@[@"funny, @"tall", @"handsome"];
[submitButton addTarget:self action:@selector(showresponse:) forControlEvents:UIControlEventTouchUpInside];


-(BOOL)showresponse:(UIButton *)sender{
    YesViewController *yesViewController=[[YesViewController alloc]init];
    NoViewController *noViewController=[[NoViewController alloc]init];

    if ([self.textField.text isEqualToString:self.keywordArray]) {
        [self.navigationController pushViewController:yesViewController animated:YES];
    } else {
        [self.navigationController pushViewController:noViewController animated:YES];
    }

    return YES;
}

但后来它说

"Incompatible pointer types sending 'NSArray *' to parameter of type 'NSString *'"



我怎么做才能让如果有人输入“他很高”它会推送到YesViewController因为“高”是一个关键词。

最佳答案

这一行:

if ([self.textField.text isEqualToString:self.keywordArray]) 

是你的错误所在。基本上,将字符串与数组进行比较没有任何意义。

而不是你在做什么,你应该检查 text来自文本字段的包含数组中的任何单词。这意味着遍历数组并检查每个项目。

这可能看起来像:
for (NSString *word in self.keywordArray) {
    if ([self.textField.text rangeOfString:word].location != NSNotFound) {
        [self.navigationController pushViewController:yesViewController animated:YES];
        return YES;
    }
}

[self.navigationController pushViewController:noViewController animated:YES];
return YES;

关于ios - 当使用 NSArray 中的字符串时,如何让 UITextField 推送到新的 ViewController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19529248/

相关文章:

iphone - 如何在主视图计算的反面 View 上获取分段控件的值?

javascript - 将变量从 Objective-C 传递到 javascript 函数?

ios - _UIButtonBarStackView : breaking constraint when becomeFirstResponder sent

ios - UITextField 委托(delegate) "shouldChangeCharactersIn"未调用文本字段中的第一个条目

iphone - 应用内购买适用于 iOS 3 和 5,但不适用于 iOS 4

ios - 从哪里获取 startMonitoringforRegion 的位置更新?

c++ - Boost::Context 在 iOS 上工作吗?

ios - 设置SIAlertView的宽度

iphone - 右对齐 UITextField 中的 PlaceHolder 文本

c++ - 编译cocos2d-x v3 IOS项目时出错,关于集成AdMob(IOS)框架