• Day5


    1 工厂方法

    - (instancetype)initWithDict:(NSDictionary *)dict
    {
        self = [super init];
        if (self) {
            self.name = dict[@"name"];
            self.icon = dict[@"icon"];
        }
        return self;
    }
    
    //工厂方法
    +(instancetype)AppInfoInitWithDict:(NSDictionary *)dict{
        return [[self alloc]initWithDict:dict];
    }
    

     2 XIB的使用

    xib可以当作是控件来使用,在里面添加一些view,然后进行使用

    ps:新添加的view的size属性要选择freeform

    //声明 返回数组 xib里面平行的控件组合成数组返回
    NSArray *arr = [[NSBundle mainBundle]loadNibNamed:@"AppInfoView" owner:nil options:nil];
            UIView *view = [arr firstObject];
    //定位
            view.frame =CGRectMake(x, y, viewW, viewH);
    

    本人的xib里面包含了一个imageview label 和button,使用方式可以使用tag标签

    UIImageView *imageView = (UIImageView *)[view viewWithTag:1];
    //也可以使用 view.subviews[0]; 但是hard code 的味道比较重 
            imageView.image = info.image;
    

    3 XIB和UIView的配合使用

    新建一个xib,然后新建一个class继续uiview配合起来使用

    可参考appmanager的例子

  • 相关阅读:
    react hooks子给父传值
    npm安装依赖 and 删除依赖
    react 阻止事件冒泡
    http 500状态码
    vue中插槽slot的使用
    怎样在vue项目中使用axios处理接口请求
    GET 与 POST 其实没有什么区别
    LazyMan
    什么是微服务,什么是分布式
    思索 p5.js 的最佳实践
  • 原文地址:https://www.cnblogs.com/lihaozhou/p/4345445.html
Copyright © 2020-2023  润新知