IOS AutoLayout详解(一)

原创Blog,转载请注明出处

blog.csdn.net/hello_hwc



前言:

AutoLayout是让UI适应控件自适应设备尺寸变化的一项关键技术。随着IOS Device的尺寸越来越多,很难再像以前一样用一些固定的数字来布置UI。

AutoLayout的实现有两种方式

  • Storyboard
  • 代码

用Storyboard实现又有三种可选方式

  • 蓝色参考线来让XCode自动创建
  • 鼠标拖拽来实现
  • XCode中的一些选项按键配置


本文的内容包括

  • Storyboard上的一些基础知识
  • 基于蓝色参考线来创建AutoLayout

下一篇文章会继续更新用Storyboard来创建AutoLayout,然后会用一篇文章讲解下如何使用Code来实现AutoLayout


StoryBoard的一些准备知识

1 不同设备Storyboard的选择

当同一个程序同时服务不同尺寸的设备时候,有时候要配置为不同的Storyboard如图,在红色圈的wAny hAny(width Any;height Any)中是选择storyboard的按键。默认情况下是一个Storyboard适用所有设备。

点击wAny hAny,如下图。红色圈圈的部分描述了哪些设备当前Storyboard。

2 Storyboard上的View预览。

预览View对于AutoLayout来说比较重要,因为如果每次都Run-Debug,那么太费时间了。

打开辅助编辑窗口。(Command+Option+Enter 快捷键)

然后,按照如下动图

打开辅助编辑窗口。

以下是一个简单的辅助编辑窗口看不同设备的效果


XCode自动创建AutoLayout

XCode可以自动创建AutoLayout,为什么我说要基于蓝色参考线呢?是因为,如果不基于蓝色参考线,自动创建的Layout很可能和想要的差很多。

用蓝色参考线来自动创建的过程

1. 按照蓝色参考线放置控件

可以看到,在拖动的过程中出现了蓝色参考线

  1. 让XCode自动创建

    选中Button,然后按照如图

这样,效果如下

可以看到,屏幕旋转,Button始终在右上角。



后续

关于AutoLayout的文章我还会更新两篇,一篇继续讲解如何用Storyboard上创建,另一篇讲解如何用Code实现。

时间: 2024-08-06 21:50:31

IOS AutoLayout详解(一)的相关文章

IOS AutoLayout详解(三)用代码实现(附Demo下载)

原创Blog,转载请注明出处 blog.csdn.net/hello_hwc 欢迎关注我的IOS SDK专栏,这个专栏我会持续进行更新. IOS SDK详解 前言: 在开发的过程中,有时候创建View没办法通过Storyboard来进行,又需要AutoLayout,这时候用代码创建就派上用场了,这篇文章我会详解用代码实现的两个主要函数,然后讲解一个Demo,最后Demo我会附上下载链接. 用代码实现的函数一 第一个函数通过描述两个view的参考线之间的约束来创建约束,例如有一个label和一个t

IOS AutoLayout详解(二)-多动图详解

原创Blog,转载请注明出处 blog.csdn.net/hello_hwc 前言: 上一篇文章介绍了一些讲解AutoLayout的准备知识,这一篇文章继续讲解用Storyboard来创建AutoLayout.下一篇文章会讲解下用Code来创建Storyboard. 用Control+Drag的方式来创建 - 对于一个View相对于SuperView的约束,Control+鼠标拖拽到Superview - 对于两个View之间,Control+鼠标拖拽到另一个view 举个例子: 我想要实现这个

IOS SDK详解

来源:http://blog.csdn.net/column/details/huangwenchen-ios-sdk.html?page=1#42803301 博客专栏>移动开发专栏>IOS SDK详解 分享到:新浪微博腾讯微博IOS SDK详解 本专栏从IOS SDK中常用的Framework出发,继而深入的介绍各个Framework.每个Framework博主都会进行Demo 收藏 订阅 最新更新文章 [移动开发] IOS SDK详解之CALayer(二) 原创Blog,转载请注明出处

IOS UIScrollView详解 & 图片缩放功能

一 UIScrollView 简介 UIScrollView是能滚动的视图控件,可以通过滚动的方式来展示类容. 二 UIScrollView常见属性 //设置UIScrollView滚动的位置 @property(nonatomic) CGPoint contentOffset;  //设置UIScrollView内容的尺寸,滚动范围 @property(nonatomic) CGSize contentSize;  //设置UIScrollView的4周增加额外的滚动区域 @property(

iOS SDK详解之NSScanner-分析String

原创blog,转载请注明出处 blog.csdn.net/hello_hwc 欢迎关注我的iOS SDK详解专栏,这里有很多基础的文章 http://blog.csdn.net/column/details/huangwenchen-ios-sdk.html 前言:NSScanner是分析String,把String转为substring和数字的很好的工具.它使用一个NSString初始化,使用的时候通常从开头处扫描直到结尾. 本文会先举出两个例子,然后详细的讲解NSScanner的方法.源码是

iOS ASIHTTPRequest详解

ASIHTTPRequest对CFNetwork API进行了封装,并且使用起来非常简单,用Objective-C编写,可以很好的应用在Mac OS X系统和iOS平台的应用程序中.ASIHTTPRequest适用于基本的HTTP请求,和基于REST的服务之间的交互. ASIHTTPRequest功能很强大,主要特色如下: l 通过简单的接口,即可完成向服务端提交数据和从服务端获取数据的工作 l 下载的数据,可存储到内存中或直接存储到磁盘中 l 能上传本地文件到服务端 l 可以方便的访问和操作请

iOS SDK详解之NSCoding协议

原创blog,转载请注明出处 http://blog.csdn.net/hello_hwc?viewmode=contents 欢迎关注我的iOS SDK详解专栏 http://blog.csdn.net/column/details/huangwenchen-ios-sdk.html 前言:NSCoding是对iOS中的Model类进行编码和解码必须要遵循的协议,如果一个对象要被归档,那么这个协议是必须的. NSCoding要实现两个方法 - initWithCoder: //解码 - enc

iOS动画详解(学习动画看这一篇就够了)

iOS动画详解(学习动画看这一篇就够了) 一.基础知识 CAAnimation.png 二.CABasicAnimation 1. 动画的属性和解释 2.属性值的解释 repeatCount : 如果在swift中需要一直不断重复:Float.infinity,OC:HUGE_VALF timingFunction: timingFunction.png kCAMediaTimingFunctionLinear--在整个动画时间内动画都是以一个相同的速度来改变.也就是匀速运动.一个线性的计时函数

iOS插件详解之----CLangFormat(代码格式化管理插件)(2016.1.12王彬)

iOS插件详解之----CLangFormat(代码格式化管理)(2016.1.12王彬) 虽然在项目创建和团队组建的初期,我们就把公共约定以及一些规范定下来了,并且由于我们的代码是通过Git来做版本控制的,web上直接就支持Markdown格式的readme文件,可以随时看到最新的版本,但是这种规范只能依靠个人的意识,或者通过代码Review来解决,而且做代码Review的时候,你也不好意思总是写上一堆诸如“这里要加个空格”.“那里要加上换行”的评论吧?如果不管,久而久之,会因为每个人的习惯不