在一个应用中login界面是必不可少的。那么如何制作一个登录界面将是本节要主要介绍的。
main.storyboard中增加一个navigation controller,作为流程跳转的主要逻辑
在默认的viewcontroller中增加两个button用来写注册的逻辑,代码如下
//
// ViewController.swift
// swiftLogin
//
// Created by Chi Zhang on 14/6/11.
// Copyright (c) 2014年 Chi. All rights reserved.
//
import UIKit
class ViewController: UIViewController {
@IBOutlet
var loginButton:UIButton
@IBOutlet
var registerButton:UIButton
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
loginButton.addTarget(self,action:"loginButtonClick:",forControlEvents:.TouchUpInside)
registerButton.addTarget(self,action:"registerButtonClick:",forControlEvents:.TouchUpInside);
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func loginButtonClick(sender:UIButton!) {
println("login")
var loginView:LoginViewController = self.storyboard.instantiateViewControllerWithIdentifier("login") as LoginViewController
self.navigationController.pushViewController(loginView, animated:true)
}
func registerButtonClick(sender:UIButton!) {
println("register")
var registerView:RegisterViewController = self.storyboard.instantiateViewControllerWithIdentifier("register") as RegisterViewController
self.navigationController.pushViewController(registerView, animated:true)
}
}
别忘了关联到storyboard
效果如下:
以上的逻辑中点击立即登录会跳转到LoginViewController, 点击免费注册会跳转到RegisterViewController.
所以在Main.storyboard中增加两个ViewController,分别命名为login和register
新建两个类分别命名为LoginViewController和RegisterViewController。
代码分别如下:
//
// LoginViewController.swift
// swiftLogin
//
// Created by Chi Zhang on 14/6/11.
// Copyright (c) 2014年 Chi. All rights reserved.
//
import UIKit
class LoginViewController: UIViewController , UITextFieldDelegate{
init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
// Custom initialization
}
init(coder aDecoder: NSCoder!) {
super.init(coder:aDecoder)
}
override func viewDidLoad() {
super.viewDidLoad()
var backgroundView:UIView = UIView(frame:CGRectMake(10,74,300,80))
backgroundView.layer.cornerRadius = 8.0
backgroundView.backgroundColor = UIColor(red: 247.0/255.0, green: 247.0/255.0, blue: 247.0/255.0, alpha: 1.0)
backgroundView.layer.borderWidth = 1
let border