1.storyboard:描述软件界面,重量级,一般描述整个软件的所有界面
2.Xib:描述软件界面,轻量级,一般用来描述局部界面(xib的本质---转化为代码)
storyboard和xib都是描述软件界面的文件,storyboard一般描述整个软件界面,xib用来描述局部界面,当发现storyboard上有许多相同的子视图块的时候,用局部的xib描述子视图,当读取xib文件的时候,会读取xib文件中的所有的对象,用数组接收。
NSBundle *bundle = [NSBundle mainBundle];
// 读取xil文件(会创建xib中的描述的所有的对象,并且按顺序放到数组中返回)
NSArray *objs = [bundle loadNibNamed:@"HLAppView" owner:nil options:nil];
UIView *appView = [objs lastObject];
如果要对xib文件中的view进行设置,可以通过xib中的视图获得相应的子视图,对其进行设置
// 图片
UIImageView *iconView = appView.subviews[0];
iconView.image = [UIImage imageNamed:app.icon];
// 名称
UILabel *nameLabel = appView.subviews[1];
nameLabel.text = app.name;