xib和storyboard小谈,

   1.共同点:都是用来描述软件界面

   2.不同点

      Xib是轻量级的,用来描述局部的UI界面

      Storyboard是重量级的,用来描述整个软件的多个界面,并且能展示多个界面之间的跳转关系,俗称"故事板".

   3.XIB使用的分类:

        3.1. xib中的内容是固定不变的,直接提供一个函数返回:

        + (instancetype)appView

        {

                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;

        }

        

        

 

posted @ 2014-04-16 12:05  Victor·旋  阅读(251)  评论(0编辑  收藏  举报