iOS界面布局之四——使用第三方库Masonry进行autolayout布局(二)

简介: iOS界面布局之四——使用第三方库Masonry进行autolayout布局

三、Masonry设置约束的几个示例


1、设置视图与其父视图的边距约束


- (void)viewDidLoad {

   [super viewDidLoad];

   // Do any additional setup after loading the view, typically from a nib.

   label = [[UILabel alloc]init];

   [self.view addSubview:label];

   [label mas_makeConstraints:^(MASConstraintMaker *make) {

       make.edges.equalTo(self.view).insets(UIEdgeInsetsMake(20, 20, 20, 20));

   }];

   label.backgroundColor = [UIColor redColor];

}

设置上下左右与其父视图边距为20px,效果如下:

image.png


2、约束控件的尺寸为固定值


[label mas_makeConstraints:^(MASConstraintMaker *make) {

       make.height.equalTo(@200);

       make.width.equalTo(@200);

       make.center.equalTo(self.view);

   }];

位置约束设置在了屏幕的中间,效果如下:


image.png


3、约束控件之间的尺寸


 [label mas_makeConstraints:^(MASConstraintMaker *make) {

       make.height.equalTo(@100);

       make.width.equalTo(label2);

       make.right.equalTo(label2.mas_left).offset(-100);

       make.leading.equalTo(self.view.mas_leading).offset(20);

       make.centerY.equalTo(self.view);

   }];

   [label2 mas_makeConstraints:^(MASConstraintMaker *make) {

       make.height.equalTo(@100);

       make.centerY.equalTo(label);

       make.trailing.equalTo(self.view.mas_trailing).offset(-20);

   }];

设置了两个label宽度一致,相距100px,分别距离左右边距20px,效果如下:

image.png

目录
相关文章
|
Swift iOS开发
iOS 用一个布局来解决嵌套问题—— UICollectionViewCompositionalLayout
iOS 用一个布局来解决嵌套问题—— UICollectionViewCompositionalLayout
iOS 用一个布局来解决嵌套问题—— UICollectionViewCompositionalLayout
|
安全 iOS开发
iOS页面布局:UIScrollView的布局问题
iOS页面布局:UIScrollView的布局问题
829 63
|
安全 Swift iOS开发
Swift 与 UIKit 在 iOS 应用界面开发中的关键技术和实践方法
本文深入探讨了 Swift 与 UIKit 在 iOS 应用界面开发中的关键技术和实践方法。Swift 以其简洁、高效和类型安全的特点,结合 UIKit 丰富的组件和功能,为开发者提供了强大的工具。文章从 Swift 的语法优势、类型安全、编程模型以及与 UIKit 的集成,到 UIKit 的主要组件和功能,再到构建界面的实践技巧和实际案例分析,全面介绍了如何利用这些技术创建高质量的用户界面。
585 2
|
Android开发 iOS开发 C#
Xamarin.Forms:从零开始的快速入门指南——打造你的首个跨平台移动应用,轻松学会用C#和XAML构建iOS与Android通用界面的每一个步骤
【8月更文挑战第31天】Xamarin.Forms 是一个强大的框架,让开发者通过单一共享代码库构建跨平台移动应用,支持 iOS、Android 和 Windows。使用 C# 和 XAML,它简化了多平台开发流程并保持一致的用户体验。本指南通过创建一个简单的 “HelloXamarin” 应用演示了 Xamarin.Forms 的基本功能和工作原理。
681 1
|
编解码 安全 Android开发
探索iOS与Android开发的差异:从界面到性能
【6月更文挑战第10天】在移动应用开发的广阔天地中,iOS和Android两大平台各占山头,它们在设计理念、用户体验、性能优化等方面展现出独特的魅力。本文将深入探讨这两大系统在开发过程中的主要差异,从用户界面设计到性能调优,揭示各自背后的技术逻辑与创新策略,为开发者提供全面的视角和实用的开发指南。
|
安全 Swift iOS开发
【Swift 开发专栏】Swift 与 UIKit:构建 iOS 应用界面
【4月更文挑战第30天】本文探讨了Swift和UIKit在构建iOS应用界面的关键技术和实践方法。Swift的简洁语法、类型安全和高效编程模型,加上与UIKit的紧密集成,使开发者能便捷地创建用户界面。UIKit提供视图、控制器、布局、动画和事件处理等功能,支持灵活的界面设计。实践中,遵循设计原则,合理组织视图层次,运用布局和动画,以及实现响应式设计,能提升界面质量和用户体验。文章通过登录、列表和详情界面的实际案例展示了Swift与UIKit的结合应用。
799 1
|
iOS开发
iOS布局中的抗被拉伸、抗压缩优先级
iOS布局中的抗被拉伸、抗压缩优先级
1283 0
|
编解码 Android开发 iOS开发
IOS使用AutoLayout让UIScrollView自动计算ContentSize
IOS使用AutoLayout让UIScrollView自动计算ContentSize
491 0
|
iOS开发
IOS15上纯代码布局之导航控制器的导航条为透明的问题
IOS15上纯代码布局之导航控制器的导航条为透明的问题
438 0
|
iOS开发
IOS使用纯代码布局替换掉默认的storyboard
IOS使用纯代码布局替换掉默认的storyboard
411 0