1.共同點:都是用來描述軟件界面數組
2.不一樣點app
Xib是輕量級的,用來描述局部的UI界面函數
Storyboard是重量級的,用來描述整個軟件的多個界面,而且能展現多個界面之間的跳轉關係,俗稱"故事板".spa
3.XIB使用的分類:對象
3.1. xib中的內容是固定不變的,直接提供一個函數返回:it
+ (instancetype)appViewio
{ast
return [NSArray arrayWithString:[NSBundle mainBundle] pathForResource:@"JHAppView"]] lastObject];軟件
}方法
3.2. 若是xib中的內容是要動態改變,則須要調用者傳遞當前模型,並重寫set方法
+ (instancetype)appViewWithApp:(MJApp *)app
{
NSBundle *bundle = [NSBundle mainBundle];
// 讀取xib文件(會建立xib中的描述的全部對象,而且按順序放到數組中返回)
NSArray *objs = [bundle loadNibNamed:@"JHAppView" owner:nil options:nil];
JHAppView *appView = [objs lastObject];
appView.app = app;
return appView;
}
- (void)setApp:(MJApp *)app
{
_app = app;
// 1.設置圖標
self.iconView.image = [UIImage imageNamed:app.icon];
// 2.設置名稱
self.nameLabel.text = app.name;
}