这是登录页面的代码,我想将输入与存储的数据进行比较。 导入UIKit
import CoreData
class ViewController: UIViewController {
@IBOutlet weak var userName: UITextField!
@IBOutlet weak var passwordText: UITextField!
@IBAction func login(sender: AnyObject) {
var appdel : AppDelegate = (UIApplication.sharedApplication().delegate as! AppDelegate)
var context : NSManagedObjectContext = appdel.managedObjectContext!
var request1 = NSFetchRequest(entityName: "User")
NSEntityDescription newUser = [NSEntityDescription entityForName: @"User" inManagedObjectContext:context];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"username == %@ AND password == %@",self.UsernameTextField.Text, self.PasswordTextField.Text];
var result : NSArray = context.executeFetchRequest(request1, error: nil)!
if (result.count > 0 ){
println("true")
}
context.save(nil)
}
答案 0 :(得分:1)
你的谓词是正确的。但是你应该设置你的请求。
四个考虑因素:
save
上下文camelNotation
命名。例如usernameTextField
而非UsernameTextField
答案 1 :(得分:0)
你几乎是正确的,只需要再迈出一步就能让魔法发生。这就像设置谓词一样请求如下
request1.predicate = predicate