文档章节

Massary屏幕适配,自动布局

iOS赵师顺
 iOS赵师顺
发布于 2016/06/26 11:15
字数 379
阅读 36
收藏 0
点赞 0
评论 0
- (void)viewDidLoad {

    [super viewDidLoad];

    //    添加红蓝两个控件

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

    blueView.backgroundColor = [UIColor blueColor];

    blueView.translatesAutoresizingMaskIntoConstraints = NO;

    [self.view addSubview:blueView];

    

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

    redView.backgroundColor = [UIColor redColor];

    redView.translatesAutoresizingMaskIntoConstraints = NO;

    [self.view addSubview:redView];

    

    //    添加约束

    

/**

 练习1:

 */

    

    /*

    [blueView mas_makeConstraints:^(MASConstraintMaker *make) {

        

//        固定大小用mas_equalTo

        make.width.mas_equalTo(100);

        make.height.mas_equalTo(100);

//        与其他控件比较equalTo

        make.centerX.equalTo(self.view.mas_centerX);

        make.centerY.equalTo(self.view.mas_centerY);

    }];

*/

    

    /**

     练习2:

     */

   /*

    [blueView mas_makeConstraints:^(MASConstraintMaker *make) {

        make.left.equalTo(self.view.mas_left).offset(30);

        make.bottom.equalTo(self.view.mas_bottom).offset(-30);

        make.right.equalTo(redView.mas_left).offset(-30);

        make.height.mas_equalTo(50);

    }];

    

    [redView mas_makeConstraints:^(MASConstraintMaker *make) {

       

        make.right.equalTo(self.view.mas_right).offset(-30);

        make.bottom.equalTo(blueView.mas_bottom);

        make.height.equalTo(blueView.mas_height);

        make.width.equalTo(blueView.mas_width);

    }];

   */

    /**

     练习3:

     */

    /*

    [blueView mas_makeConstraints:^(MASConstraintMaker *make) {

        make.left.equalTo(self.view.mas_left).offset(30);

        make.top.equalTo(self.view.mas_top).offset(30);

        make.right.equalTo(self.view.mas_right).offset(-30);

        make.height.mas_equalTo(50);

        

    }];

    [redView mas_makeConstraints:^(MASConstraintMaker *make) {

        make.right.equalTo(blueView.mas_right);

        make.top.equalTo(blueView.mas_bottom).offset(30);

        make.height.equalTo(blueView.mas_height);

        make.left.equalTo(blueView.mas_centerX);

    }];

     */

//    删除约束,重新添加

    [blueView mas_remakeConstraints:^(MASConstraintMaker *make) {

        

    }];

//    更新约束

    [blueView mas_updateConstraints:^(MASConstraintMaker *make) {

        

    }];

    

}
//方法一,array 的 mas_distributeViewsAlongAxis
/**
 *  多个控件固定间隔的等间隔排列,变化的是控件的长度或者宽度值
 *
 *  @param axisType        轴线方向
 *  @param fixedSpacing    间隔大小
 *  @param leadSpacing     头部间隔
 *  @param tailSpacing     尾部间隔
 */
//    MASAxisTypeHorizontal  水平
//    MASAxisTypeVertical    垂直

[arrayList mas_distributeViewsAlongAxis:MASAxisTypeHorizontal
                       withFixedSpacing:20
                            leadSpacing:5
                            tailSpacing:5];
[arrayList mas_makeConstraints:^(MASConstraintMaker *make) {
    make.top.mas_equalTo(60);
    make.height.mas_equalTo(100);
}];

/**
 *  多个固定大小的控件的等间隔排列,变化的是间隔的空隙
 *
 *  @param axisType        轴线方向
 *  @param fixedItemLength 每个控件的固定长度或者宽度值
 *  @param leadSpacing     头部间隔
 *  @param tailSpacing     尾部间隔
 */
[arrayList mas_distributeViewsAlongAxis:MASAxisTypeVertical
                    withFixedItemLength:60
                            leadSpacing:40
                            tailSpacing:10];
[arrayList mas_makeConstraints:^(MASConstraintMaker *make) {
    //        make.top.mas_equalTo(100);
    //        make.height.mas_equalTo(100);
    make.left.mas_equalTo(20);
    make.right.mas_equalTo(-20);
}];

 

© 著作权归作者所有

共有 人打赏支持
iOS赵师顺
粉丝 3
博文 74
码字总数 36150
作品 0
昌平
程序员
Android适配全面总结(一)

前言 Android适配是一个老生常谈的问题,很多程序员觉得很恶心,不愿意做适配,但是又不得不做。然后老板说,这位兄弟,做好了,今天晚饭给你加个鸡腿,然后程序员开始找各种资料,忙活起来了...

阿韦爱Android
2017/11/14
0
0
iOS 自动布局库--MyLinearLayout

MyXXXXLayout 是一个功能强大的 iOS 布局类库,可以适配各种屏幕和各种操作系统 ,不需要去学习 AutoLayout,不用去学习 Size Class。 如果您还在使用frame进行界面布局,而对位置计算感到厌烦...

欧阳大哥
2015/08/18
772
0
Android 屏幕适配

由于 Android 系统的开放性,任何用户、开发者、OEM 厂商、运营商都可以对 Android 进行定制,于是导致: Android 系统碎片化: 小米定制的 MIUI、魅族定制的 flyme、华为定制的 EMUI 等等—...

guozhendan
2017/04/04
0
0
Android初级第九讲之适配和调试

本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! Android适配需要考虑方方面面,主要是图片字体大小和API,但也要考虑其他场景下的一些问题。 先熟悉一下Android设备的dpi...

liuzxgeek
2016/12/14
0
0
一些收藏的经典demo以及框架

http://git.oschina.net/youngsoft/MyLinearLayout MyLayout1.1.2 一套功能强大的iOS布局库,他不是在自动布局的基础上进行的封装,而是一套原生的基于对frame设置的封装,通过重载layoutSub...

天使雨儿
2016/02/19
39
0
android多分辨率多屏幕密度下UI适配方案

前言 Android设计之初就考虑到了UI在多平台的适配,它本身提供了一套完善的适配机制,随着版本的发展适配也越来越精确,UI适配主要受平台两个因素的影响:屏幕尺寸(屏幕的像素宽度及像素高度...

geeksu
2014/08/20
0
0
如何创建支持不同屏幕尺寸的Android应用(转载)

源地址:http://wiki.eoe.cn/page/SupportingDifferentScreens Supporting Different Screens Android用两种常规属性来分类设备屏幕:尺寸和像素密度。作为开发者,你应当预料到你的android应...

mutouzhang
2014/03/09
0
0
一种粗暴快速的Android全屏幕适配方案

一、现状 由于Android碎片化严重,屏幕适配一直是开发中较为头疼的问题。面对市面上五花八门的屏幕大小与分辨率,Android基于dp与res目录名称来适配的方案已无法满足一次编写全屏幕适配的需求...

一个敲代码的前端妹子
05/10
0
0
iOS不用任何适配框架做屏幕适配

相信大家对于屏幕适配都知道可以用自动布局,如果是纯代码的话可以用第三方框架Masonry但是有的朋友不喜欢用第三方框架那怎么办呢? 今天给大家推荐一种方式,不用第三方框架就可以适配各种屏幕...

秦无炎
2016/11/25
32
0
xFace3.x 开发技巧(4)---适配方案

适配方案 分辨率适配方案 1. 使用meta标签进行缩放适配(该方案仅适用于xFace平台) Webkit具备高效缩放视图的能力,因此我们可以借助viewport的设置来让界面自动适应近似分辨率的屏幕. Viewp...

xFace3
2013/12/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

jquery刷新页面(局部及全页面刷新)

window.location.reload()刷新当前页面. parent.location.reload()刷新父亲对象(用于框架) opener.location.reload()刷新父窗口对象(用于单开窗口) top.location.reload()刷新最顶端对象...

uug
3分钟前
0
0
CoreText进阶(五)- 文字排版样式和效果

CoreText进阶(五)- 文字排版样式和效果 效果 以下是三个设置了不同属性的效果图 第一个设置了文字颜色为红色,字体为16号 第二个设置了文字颜色为灰色,字体为16号,对其为居中 第三个设置...

aron1992
29分钟前
1
0
10.23 linux任务计划cron~10.27 target介绍

crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是...

洗香香
40分钟前
0
0
告警系统主脚本、告警系统配置文件、告警系统监控项目

20.20 告警系统主脚本 告警系统主脚本 main.sh内容 #!/bin/bash#Written by aming.# 是否发送邮件的开关export send=1# 过滤ip地址export addr=`/sbin/ifconfig |grep -A1 "en...

lyy549745
43分钟前
0
0
Don’t Repeat Yourself

在软件工程中,Don’t Repeat Yourself(DRY)是软件开发的原则,旨在减少重复,用抽象代替它,使用数据规范化来避免冗余。 这个原则在维基百科上是说是由Andy Hunt和Dave Thomas《The Pragmat...

woshixin
45分钟前
0
0
搭建webpack项目框架

作者:汪娇娇 时间:2018年6月4日 一、说明 随着业务发展和前端人员的增加,搭建一个通用框架以及制定统一规范就成了必然。对于选型这方面,一开始好像就没考虑其他框架,直接选了webpack。w...

娇娇jojojo
52分钟前
0
0
Java基础——面向对象(内部类)

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 内部类: 1.有名内部类 2.无名内部类 内部类申请...

凯哥学堂
今天
0
0
HttpClient内部三个超时时间的区别

RequestConfig requestConfig = RequestConfig.custom() .setConnectionRequestTimeout(config.connReqTimeout) //从连接池中获取连接的超时时间 ......

1713716445
今天
0
0
每天一个命令SCP

每天一个命令:SCP scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速...

河图再现
今天
0
0
cron/chkconfig/systemd/unit/target

linux任务计划 : cron工具 任务计划在运维工作中用到的比较多,大部分系统管理工作都是通过定期自动执行某个脚本来完成。 查看linux中任务计划的配置文件: /etc/crontab [root@yolks-001 ~]...

Hi_Yolks
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部