在UITextfield上创建一个包含错误的红色边框

Ste*_*ann 2 iphone validation objective-c ios

我正在制作一个客观的表格.我将我填写的所有数据以我的形式发布到网络服务中.如果一切正常并且数据成功发布,这会给我200个代码.但如果出现问题,它会给我406代码.如果是这样的话.JSON还包含错误对象.您可以在此处查看JSON的示例.

{

    "data": {
        "status": 406,
        "message": "Not Acceptable",
        "errors": {
            "cu_email": [
                "'stefappmax.be'is no valid email!"
            ]
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

我的文本字段与JSON中的名称相同e.g. My email-textfield calls cu_email 现在我有了这段代码.

   NSDictionary* dict = [json objectForKey:@"data"];
                NSLog(@"dict: %@",dict);
                for (NSString *errorObject in [dict objectForKey:@"errors"]) {
                    NSLog(@"error name: %@",errorObject);
                }
Run Code Online (Sandbox Code Playgroud)

这将返回包含错误的所有文本字段的名称.我现在要做的是在这些文本字段周围做一个红色边框.我知道要放置一个边框,你需要实现quartzcore框架工作并添加这段代码.

self.cu_email.layer.borderColor = [[UIColor redColor] CGColor];
Run Code Online (Sandbox Code Playgroud)

但是你们现在如何用cu替换cu_email errorObject

Mid*_* MP 7

我认为这对你有用:

您可以使用KVC访问该textField属性:

UITextField *theErrorField = (UITextField *)[self valueForKey:errorObject];
theErrorField.layer.borderColor = [[UIColor redColor] CGColor];
theErrorField.layer.borderWidth = 3.0;
Run Code Online (Sandbox Code Playgroud)