如何将自定义字段添加到 swift 上的解析注册视图控制器
How can I add custom fields to my parse sign up view controller on swift
你们能帮忙吗?我正在尝试将几个自定义字段添加到我的注册表单中,但我真的不知道该怎么做。我想添加公司、名称、phone、地址和网站字段。
这是我在 signUpViewController 上的代码
谢谢堆
import UIKit
导入解析
class CreateAccountViewController: UIViewController {
@IBOutlet weak var dialogView: DesignableView!
@IBOutlet weak var messageLabel: UILabel!
@IBOutlet weak var namesField: DesignableTextField!
@IBOutlet weak var usernameField: DesignableTextField!
@IBOutlet weak var companyField: DesignableTextField!
@IBOutlet weak var passwordField: DesignableTextField!
@IBOutlet weak var phoneNumberField: DesignableTextField!
@IBOutlet weak var emailField: DesignableTextField!
@IBOutlet weak var office: DesignableTextField!
@IBOutlet weak var websiteField: DesignableTextField!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func closeButtonDidTouch(sender: AnyObject) {
dismissViewControllerAnimated(true, completion: nil)
dialogView.animation = "fall"
dialogView.animate()
}
@IBAction func signupButton(sender: AnyObject) {
var username = self.usernameField.text
var name = self.namesField.text
var password = self.passwordField.text
var email = self.emailField.text
var phone = self.phoneNumberField.text
var company = self.companyField.text
var office = self.office.text
var website = self.websiteField.text
// Validate the text fields
if username!.characters.count < 5 {
var alert = UIAlertView(title: "Invalid", message: "You need to use your LBP number", delegate: self, cancelButtonTitle: "OK")
alert.show()
} else if password!.characters.count < 8 {
var alert = UIAlertView(title: "Try again", message: "Password must be longer than 8 characters", delegate: self, cancelButtonTitle: "OK")
alert.show()
} else if email!.characters.count < 8 {
var alert = UIAlertView(title: "Try again", message: "Please enter a valid email address", delegate: self, cancelButtonTitle: "OK")
alert.show()
} else {
// Run a spinner to show a task in progress
var spinner: UIActivityIndicatorView = UIActivityIndicatorView(frame: CGRectMake(0, 0, 150, 150)) as UIActivityIndicatorView
spinner.startAnimating()
var newUser = PFUser()
newUser.username = username
newUser.password = password
newUser.email = email
// Sign up the user asynchronously
newUser.signUpInBackgroundWithBlock({ (succeed, error) -> Void in
// Stop the spinner
spinner.stopAnimating()
if ((error) != nil) {
var alert = UIAlertView(title: "Error", message: "\(error)", delegate: self, cancelButtonTitle: "OK")
alert.show()
} else {
var alert = UIAlertView(title: "Success", message: "You've been signed up to Build Cert", delegate: self, cancelButtonTitle: "OK")
alert.show()
dispatch_async(dispatch_get_main_queue(), { () -> Void in
let viewController:UIViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("Home") as! UIViewController
self.presentViewController(viewController, animated: true, completion: nil)
})
}
})
}
}
尝试使用 set object for key 方法。例如:
newUser.setObject(self.office.text, forKey:"office")
你们能帮忙吗?我正在尝试将几个自定义字段添加到我的注册表单中,但我真的不知道该怎么做。我想添加公司、名称、phone、地址和网站字段。
这是我在 signUpViewController 上的代码
谢谢堆
import UIKit
导入解析
class CreateAccountViewController: UIViewController {
@IBOutlet weak var dialogView: DesignableView!
@IBOutlet weak var messageLabel: UILabel!
@IBOutlet weak var namesField: DesignableTextField!
@IBOutlet weak var usernameField: DesignableTextField!
@IBOutlet weak var companyField: DesignableTextField!
@IBOutlet weak var passwordField: DesignableTextField!
@IBOutlet weak var phoneNumberField: DesignableTextField!
@IBOutlet weak var emailField: DesignableTextField!
@IBOutlet weak var office: DesignableTextField!
@IBOutlet weak var websiteField: DesignableTextField!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func closeButtonDidTouch(sender: AnyObject) {
dismissViewControllerAnimated(true, completion: nil)
dialogView.animation = "fall"
dialogView.animate()
}
@IBAction func signupButton(sender: AnyObject) {
var username = self.usernameField.text
var name = self.namesField.text
var password = self.passwordField.text
var email = self.emailField.text
var phone = self.phoneNumberField.text
var company = self.companyField.text
var office = self.office.text
var website = self.websiteField.text
// Validate the text fields
if username!.characters.count < 5 {
var alert = UIAlertView(title: "Invalid", message: "You need to use your LBP number", delegate: self, cancelButtonTitle: "OK")
alert.show()
} else if password!.characters.count < 8 {
var alert = UIAlertView(title: "Try again", message: "Password must be longer than 8 characters", delegate: self, cancelButtonTitle: "OK")
alert.show()
} else if email!.characters.count < 8 {
var alert = UIAlertView(title: "Try again", message: "Please enter a valid email address", delegate: self, cancelButtonTitle: "OK")
alert.show()
} else {
// Run a spinner to show a task in progress
var spinner: UIActivityIndicatorView = UIActivityIndicatorView(frame: CGRectMake(0, 0, 150, 150)) as UIActivityIndicatorView
spinner.startAnimating()
var newUser = PFUser()
newUser.username = username
newUser.password = password
newUser.email = email
// Sign up the user asynchronously
newUser.signUpInBackgroundWithBlock({ (succeed, error) -> Void in
// Stop the spinner
spinner.stopAnimating()
if ((error) != nil) {
var alert = UIAlertView(title: "Error", message: "\(error)", delegate: self, cancelButtonTitle: "OK")
alert.show()
} else {
var alert = UIAlertView(title: "Success", message: "You've been signed up to Build Cert", delegate: self, cancelButtonTitle: "OK")
alert.show()
dispatch_async(dispatch_get_main_queue(), { () -> Void in
let viewController:UIViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("Home") as! UIViewController
self.presentViewController(viewController, animated: true, completion: nil)
})
}
})
}
}
尝试使用 set object for key 方法。例如:
newUser.setObject(self.office.text, forKey:"office")