Buttonを押したときに実行されるメソッドを指定したいときには下記のメソッドを使います。
lang
1button.addTarget(self, action: "tapped", forControlEvents: .TouchUpInside)
これはボタンを押したときに
・第1引数に指定したオブジェクト(target)の
・第2引数で指定した名前のメソッド(action)が
・第3引数の条件(controlEvent)で実行される
という意味です。
通常はViewController内でボタンを作成すると思うのでtargetにselfを入れておけば
ViewController内にボタンを押したときの処理を書くことができます。
その処理の中で画面遷移をすればOK
参考ソース
lang
1import UIKit
2
3class ViewController: UIViewController {
4
5 override func viewDidLoad() {
6 super.viewDidLoad()
7
8 //カレンダーViewのつもり
9 let baseView = UIView()
10 baseView.frame = CGRectMake(0, 0, 320, 568)
11 baseView.backgroundColor = UIColor.redColor()
12 self.view.addSubview(baseView)
13
14 //カレンダーViewの上に日付ボタンのつもり
15 let button = UIButton()
16 button.setTitle("次へ", forState: .Normal)
17 button.frame = CGRectMake(100, 100, 100, 30)
18 button.addTarget(self, action: "tapped", forControlEvents: .TouchUpInside)
19 baseView.addSubview(button)
20
21 }
22
23 //ボタンが押されたときの処理
24 func tapped() {
25 performSegueWithIdentifier("next",sender: nil)
26 }
27}
StoryboardでSegueにプログラム中で指定したIdentifier(ここでは"next")を指定するのをお忘れなく。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/02/26 00:20
2015/02/28 23:37