美文网首页
适配详解

适配详解

作者: nothing_c | 来源:发表于2016-10-29 00:42 被阅读69次

    图片适配、控件适配,xib适配。Masonry


    //图片适配

    //3gs和4的屏幕缩放系数是1. 4s~6s屏幕缩放系数是2. 6+和6s+缩放系数是3.一张20x20的图片,在3gs和4上正常显示,在缩放系数是2或者3的设备上会被放大缩放(模糊),在2上两倍,在3上三倍.所以我们现在一般只做两倍和三倍图.

    //如果没有三倍图,会自动找到2倍图放大

    //example.png   example@2x.png  example@3x.png 加载图片用:imageNamed:@"example.png"

    //PDF不失真

    //NSString *path = [[NSBundle mainBundle] pathForResource:@"0" ofType:@"png"];

    //_imageView.image = [UIImage imageWithContentsOfFile:path];

    _imageView.image= [UIImageimageNamed:@"脸"];

    //字体有大有小字体颜色不会失真,颜色是矢量数据

    NSLog(@"%@",[UIFont familyNames]);

    //设置字体类型和大小

    //[UIFont fontWithName:<#(nonnull NSString *)#> size:<#(CGFloat)#>];

    用于生成各种需要的Icon的软件

    IconKit

    //控件适配

    //使用第三方库Masonry进行约束适配

    UIView *titleView = [[UIView alloc] init];

    titleView.backgroundColor= [UIColor redColor];

    //对视图进行约束之前,要保证该视图已经添加到其父视图上

    [self.view addSubview:titleView];

    //Masonry的使用

    [titleView mas_makeConstraints:^(MASConstraintMaker*make) {

    //顶部的偏移量为0

    make.top.offset(0);

    //左侧的偏移量为0

    make.left.offset(0);

    //右侧的偏移量为0

    make.right.offset(0);

    //定高度

    make.height.offset(60);

    }];

    UIView *bgView = [[UIView alloc] init];

    bgView.backgroundColor= [UIColor orangeColor];

    [self.view addSubview:bgView];

    [bgView mas_makeConstraints:^(MASConstraintMaker*make) {

    make.top.offset(20);

    make.left.offset(20);

    //右下位置为正

    //左上位置为负

    make.right.offset(-20);

    make.bottom.offset(-20);

    }];

    UIView *view1 = [[UIView alloc] init];

    view1.backgroundColor= [UIColor cyanColor];

    [bgView addSubview:view1];

    UIView *view2 = [[UIView alloc] init];

    view2.backgroundColor= [UIColorcyanColor];

    [bgView addSubview:view2];

    //等距等宽等高

    [view1 mas_makeConstraints:^(MASConstraintMaker*make) {

    //等高

    make.top.offset(20);

    make.bottom.offset(-20);

    //等距

    make.left.offset(20);

    make.right.equalTo(view2.mas_left).offset(-20);

    //view1和view2等宽

    make.width.equalTo(view2.mas_width);

    }];

    [view2 mas_makeConstraints:^(MASConstraintMaker*make) {

    //等高

    make.top.offset(20);

    make.bottom.offset(-20);

    //等距

    make.right.offset(-20);

    }];

    //适配的缩放匹配

    UIView *view = [[UIView alloc] init];

    view.backgroundColor= [UIColor greenColor];

    [self.view addSubview:view];

    [view mas_makeConstraints:^(MASConstraintMaker*make) {

    make.top.offset(0);

    make.left.offset(0);

    //        make.width.offset(self.view.frame.size.width/2);

    //multipliedBy缩放系数

    make.width.equalTo(self.view.mas_width).multipliedBy(0.5);

    make.height.equalTo(self.view.mas_height).multipliedBy(0.5);

    }];


    //XIB适配

    //使用xib约束,上,下,左,右,长度,高度,只需要四个即可约束

    //不需要外边框Constrain to margins

    //对于提示错误或者警告,可以对其进行点击修正,之后要update

    //等宽,等高都可以使用

    约束

    //点击约束线条可以设置比例

    比例

    //对于要设置子视图的关系比例,可以选中子视图及其需要成为父视图的选项,进行约束

    设置

    相关文章

      网友评论

          本文标题:适配详解

          本文链接:https://www.haomeiwen.com/subject/djoeuttx.html