EALayout 第八节 如何在自己的工程里添加EALayout.framework

来源:互联网 发布:小京东app源码 编辑:程序博客网 时间:2024/06/07 13:22

https://github.com/easycodingTop/EALayoutLiteForOC

QQ群:454686295

====================================================

这一节讲如何嵌入到自己的工程


如何将 EALayout.framework 嵌入自己的工程

        1.  在github下载任意一个 Demo, 将里面的  EALayout.framework 添加到自己的工程
            添加好工程后,在工程   Build Settings 里, Other Linker Flags 里,添加上 -ObjC,

        2. 然后执行 Demo工程目录里的    installSnippets.sh,目的是将  当前目录 CodeSnippets 里的文件
           复制到  ~/Library/Developer/Xcode/UserData/CodeSnippets 目录下。
           当然也可以手动复制过去。这的目的是给json添加提示。
           复制完成后,重新启动一下 Xcode. (后面会讲如果自定义json里的提示)。

        

如何在自己的工程里使用 EALayout.framework

        1. 在需要的文件里添加  import <EALayout/EALayout.h>
        2. 在ViewController里定义一个变量 :
                   @property (nonatomic,strong)SkinParser* skinParser;
        3. 在构造方法里添加如下代码
            -(id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

            {

                if (self = [superinitWithNibName:nibNameOrNilbundle:nibBundleOrNil] )

                 {

                          //通过一个文件名创建 SkinParser, 这里我们使用了类名   

                             //使用类名是因为我们可以将些代码写入基类,不用每个类都再写一遍

                    _skinParser = [SkinParsergetParserByName:NSStringFromClass([selfclass])];


                    //这里设置 eventTarget, 目的是在解析如 UIButton/UIControl之类的控件

                    //将其作为  target 绑定到控件上,在ViewController 里只需要实现具体方法即可

                   _skinParser.eventTarget = self;

                }

                 return self;

            }


        4.  在 loadView 里:

                -(void)loadView

               {

                   [superloadView];

                   [_skinParserparse:@"selfView" view:self.view];

               }

               SkinParser的这个方法  : 

                         -(UIView*)parse:(NSString*)key view:(UIView* )view;

                         将json里, key 对应view的描述,设置到 view上,并且返回值为该view

                         如果 view 参数为空,则会通过  "class"描述的类,动态创建 View实例。


        5. 在 viewDidLoad 里:

             -(void)viewDidLoad

            {

                [self.viewspUpdateLayout];

             }

            这里将会对 self.view 里所有view进行布局。


             6. 然后添加一个资源文件,我们添加与当前 ViewController 类名同事的一个json文件。

                 如果 该类叫   ViewController  那么,我们添加一个叫  ViewController.json 的文件即可

========================================================================================

敬请关注下一节:

====================================================

https://github.com/easycodingTop/EALayoutLiteForOC

QQ群:454686295

====================================================


0 0
原创粉丝点击