文档章节

Massary屏幕适配,自动布局

iOS赵师顺
 iOS赵师顺
发布于 2016/06/26 11:15
字数 379
阅读 40
收藏 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
一些收藏的经典demo以及框架

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

天使雨儿
2016/02/19
39
0
xcode8 SizeClass适配iPhone 和 ipad的布局

(一)sizeClass 适配横竖屏举例 创建一个 .xib 文件,在Interface Builder 中看到下面的界面是可以选择横竖屏的,但是此时设置的constraint 是针对所有size classes 的,包括横竖屏。 适配不...

朝雨晚风
2017/10/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

使用xtrabackup完成远程备份

转载收藏,以防丢失 需求 Can I backup remote databases from my local server02-27-2013, 06:17 AMHi, I am using mysqldump so far for taking daily backups of my Production datab......

阿dai
21分钟前
1
0
OSChina 周五乱弹 —— 心情超级好开始乱删库

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子:分享Charli XCX的单曲《Boom Clap》 《Boom Clap》—— Charli XCX 手机党少年们想听歌,请使劲儿戳(这里) 把生命除去上班时间,...

小小编辑
22分钟前
8
7
为什么你的python版本一团糟?因为少了这个操作

坑人的版本 Python 的版本问题一直是个广被吐槽的黑点。以至于有人调侃说: Python 是世界上最好的两种语言! 在这里我要说明下,对于初学者来说,版本间的语法差异其实并不大。现在刚开始学...

crossin
昨天
2
1
Cannot forward after response has been committed

声名:转载自CSDN 通过toncat启动服务器,可以正常登陆访问,登陆进去选择子系统的时候点击登陆的时候,可是去又回到了登陆界面,如此反复就是不能够进入子系统,查看后台报的错误: java.la...

小橙子的曼曼
昨天
2
0
shell编程(告警系统邮件引擎、运行告警系统)

告警系统邮件引擎 1.如果要使用邮件引擎功能,需要调用mail.py文件,放到/usr/local/sbin/mon/mail/目录下即可,具体内容如下: #!/usr/bin/env python#-*- coding: UTF-8 -*-import os,s...

蛋黄_Yolks
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部