學(xué)習(xí)IOS幾天了菜枷,跟著教程做了兩個(gè)小應(yīng)用了苍糠,現(xiàn)在先來(lái)總結(jié)一下。今天就是創(chuàng)建視圖和綁帶到代碼了啤誊。其實(shí)就是常見(jiàn)的MVC模式實(shí)現(xiàn)岳瞭。
使用的Xcode版本是8.2拥娄。
在Xcode創(chuàng)建項(xiàng)目之后,默認(rèn)就會(huì)創(chuàng)建一個(gè)Main.stroyborad,程序的入口也就是這里瞳筏,可以在General的Deployment Info里的Main Interface修改入口storyboard為其他的稚瘾。
在項(xiàng)目的目錄中還能看見(jiàn)自動(dòng)創(chuàng)建的ViewController類(lèi),其實(shí)就是一個(gè)ViewController對(duì)應(yīng)一個(gè)界面姚炕√罚控件庫(kù)中自帶了幾個(gè)ViewController,新建項(xiàng)目時(shí)柱宦,Single View Application 就是創(chuàng)建一個(gè)空白的ViewController些椒。Tabbed Application就是創(chuàng)建一個(gè)Tab Bar Controller。
在MVC模式中
* M -- 數(shù)據(jù)模型
* V -- View 對(duì)應(yīng)這里的storyboard上的界面
* C -- Controller 對(duì)應(yīng)這里的ViewController類(lèi)
- 通過(guò)storyboard掸刊,我們?cè)O(shè)計(jì)界面免糕,然后通過(guò)制定界面控件和ViewController類(lèi)的關(guān)系,達(dá)到View和Controller綁定忧侧。
- 通過(guò)storyboard石窑,還可以設(shè)計(jì)界面間的跳轉(zhuǎn)segue。
- 上圖中的ViewController就是整個(gè)storyboard的root view controller
創(chuàng)建好擺放控件界面之后蚓炬,就可以開(kāi)始擺放控件和將控件遇ViewController綁定了
1 擺放控件
將控件從控件庫(kù)松逊,拖動(dòng)到界面上就ok。
2 設(shè)置控件樣式
選中控件试吁,在右側(cè)的inspector面板里選擇button的類(lèi)型棺棵、狀態(tài)、標(biāo)題熄捍、文字顏色烛恤、文字大小等屬性
3 將控件與controller綁定
選中控件,在右側(cè)的connection inspector面板中余耽,可以看見(jiàn)button的連接屬性
- Triggered Segues 這個(gè)action連接到一個(gè)界面時(shí)缚柏,點(diǎn)擊button就將調(diào)轉(zhuǎn)到連接的界面
- Outlet Collections button將作為一個(gè)屬性集合的一員
- Sent Events 當(dāng)button的不同點(diǎn)擊事件觸發(fā)時(shí),連接到上面的方法就被觸發(fā)
- Refrencing Outlets button作為一個(gè)類(lèi)的屬性碟贾,一般就是button所在界面的ViewController類(lèi)的屬性
button可以作為類(lèi)屬性的同時(shí)币喧,將自己的事件與類(lèi)的方法綁定;也可制作為屬性袱耽,或者只綁定事件杀餐。
4 開(kāi)始操作
有2種方式,可以進(jìn)行綁定
- 1 在controller類(lèi)里定義屬性和方法朱巨,再手動(dòng)綁定
-
1
button的屬性: @property(nonatomic,weak)IBOutlet UIButton* button; button的事件: - (IBAction)clickButton:(id)sender;
2 在button的connection inspector面板中史翘,將屬性或事件綁定到button屬性和clickButton方法上
3 綁定之后,就能屬性是和View Controller綁定的;touch up side 事件是和View Controller里的clickButton方法綁定的
-
- 2 自動(dòng)綁定琼讽,好安逸必峰。選中button所在的布局,然后點(diǎn)擊Xcode右上角的assistan editor钻蹬。確保是在ViewController.h文件吼蚁,如果不是可以在頂部切換到。接著鼠標(biāo)按著button + Ctrl问欠,往interface區(qū)中拖肝匆,按圖那樣操作,就能實(shí)現(xiàn)綁定溅潜。
經(jīng)過(guò)上述的操作之后术唬,我們就能點(diǎn)擊界面中間的button,做些事情了滚澜。
最終控制器里的代碼粗仓,加一句點(diǎn)擊button就修改button的文字。
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet UIButton *button;
- (IBAction)clickButton:(id)sender;
@end
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
- (IBAction)clickButton:(id)sender {
//修改button文字
[self.button setTitle:@"clicked!" forState:UIControlStateNormal];
}
@end
以上就是在storyboard里綁定Button和控制器的方法设捐,其他控件也類(lèi)似借浊。
小生入門(mén),有何不對(duì)之處萝招,還望指出蚂斤。_