iOS学习--第三方库的下载和使用和Masonry学习

第三方库的下载使用和Masonry学习

第三方库的下载

1.安装cocoapods,具体可以参考这位大佬的博客链接: 链接: cocopods安装,亲测可行哦亲。
2.打开终端,输入cd空格后拖入文件
在这里插入图片描述
3.输入pod init来初始化一个podfile;成功后文件夹内会多出一个podfile文件,内容是这样的在这里插入图片描述
如果是在oc框架下,建议修改为以下形式
在这里插入图片描述
可以直接在podfile里直接改,也可以在终端里输入open Podfile来打开;记住经可能改为这种形式,不然可能会出现下载了,用不了的情况(问就是我就是这样的);
4.pod install
在这里插入图片描述
一般没出现error就下载完成了,这时会多出几个文件
在这里插入图片描述
之后我们只要用那个space文件就行了,这里我下载了一个名为Masonry的第三方库。

Masonry的学习

这个名为Masonry的第三方库,功能有点类似于自适应式图,可以对视图对象进行约束,并自定义上下左右的宽距;
对Masonry的使用,其实就是对封装好的函数方法的调用,网上查询到的方法有以下这些:

mas_makeConstraints()    添加约束
mas_remakeConstraints()  移除之前的约束,重新添加新的约束
mas_updateConstraints()  更新约束,写哪条更新哪条,其他约束不变

equalTo()       参数是对象类型,一般是视图对象或者mas_width这样的坐标系对象
mas_equalTo()   和上面功能相同,参数可以传递基础数据类型对象,可以理解为比上面的API更强大

width()         用来表示宽度,例如代表view的宽度
mas_width()     用来获取宽度的值。和上面的区别在于,一个代表某个坐标系对象,一个用来获取坐标系对象的值

1.下载好库之后,引用Masonry的头文件
#import “Masonry.h”
2.对视图对象添加约束并设定参数;
[view01 mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(150) ;
make.left.mas_equalTo(70) ;
make.width.mas_equalTo(250) ;
make.height.mas_equalTo(250) ;
}] ;

//
//  ViewController.m
//  textdomo
//
//  Created by 朱敬业 on 2023/8/29.
//

#import "ViewController.h"
#import "Masonry.h"
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    self.view.backgroundColor = UIColor.whiteColor ;
    UIView* view01 = [[UIView alloc] init] ;
    view01.backgroundColor = UIColor.redColor ;
    [self.view addSubview:view01] ;
    self.view00 = view01 ;
    UIView* view02 = [[UIView alloc] init] ;
    view02.backgroundColor = UIColor.blueColor ;
    [view01 addSubview:view02] ;
    UIView* view03 = [[UIView alloc] init] ;
    view03.backgroundColor = UIColor.greenColor ;
    [view02 addSubview:view03] ;
    [view01 mas_makeConstraints:^(MASConstraintMaker *make) {
        make.top.mas_equalTo(150) ;
        make.left.mas_equalTo(70) ;
        make.width.mas_equalTo(250) ;
        make.height.mas_equalTo(250) ;
    }] ;
    [view02 mas_makeConstraints:^(MASConstraintMaker *make) {
        make.top.mas_equalTo(25) ;
        make.left.mas_equalTo(25) ;
        make.width.mas_equalTo(200) ;
        make.height.mas_equalTo(200) ;
    }] ;
    [view03 mas_makeConstraints:^(MASConstraintMaker *make) {
        make.top.mas_equalTo(25) ;
        make.left.mas_equalTo(25) ;
        make.width.mas_equalTo(150) ;
        make.height.mas_equalTo(150) ;
    }] ;
    UIButton* btn = [UIButton buttonWithType:UIButtonTypeRoundedRect] ;
    [btn setTitle:@"1" forState:UIControlStateNormal] ;
    [btn addTarget:self action:@selector(presschange) forControlEvents:UIControlEventTouchUpInside] ;
    btn.frame = CGRectMake(10, 600, 30, 30) ;
    [self.view addSubview:btn] ;
}

- (void)presschange {
    [self.view00 mas_updateConstraints:^(MASConstraintMaker *make) {
        make.top.mas_equalTo(20) ;
        make.left.mas_equalTo(20) ;
    }] ;
}


@end


在这里插入图片描述

在这里插入图片描述
我这里是改变父视图位置来改变被约束的子视图位置,也可以改变宽距但没写了;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值