uinty3d Auto Layout(自动布局)

1、Auto Layout (自动布局)

自动布局系统提供方法在layout groups中嵌套放置元素,例如horizontal horizontal groups, vertical groups, 或者grids。它也允许元素包换的内容自动地设置大小。例如一个按钮可以根据它的文本内容动态地重新设置大小。

自动布局系统是一个基于基础的Rect Transform之上的布局系统,它可以随意的用在一些或者全部元素上。

2、理解Layout Elements(布局元素)

自动布局系统基于layout elements 和layout controllers的概念。

一个layout element用以下属性来定义:

  • Minimum width      窗口允许的最小宽度
  • Minimum height     窗口允许的最小高度
  • Preferred width    可以理解为,UI自身希望的宽度
  • Preferred height   可以理解为,UI自身希望的高度
  • Flexible width     如果父UI的宽度大于Preferred ,使子UI填充满父UI(默认值为-1,不会进行扩展,当大于0时,作为权重值来计算当前UI的位置)
  • Flexible height     同上

图像和文本组件是两个例子的功能作为布局元素的组件。他们有一个最小minimum宽度和高度为零,和首选preferred的宽度和高度相匹配的图像或文本的内容。他们灵活flexible的宽度和高度是 -1。

图像和文本的组件已经是布局元素功能,因为他们定义他们自己的最小值和首选大小。如果你想要重写的最小值或首选的大小,您可以通过将布局元素组件添加到游戏物体。布局元素组件也可以添加到任何游戏对象,使成为一种布局元素。

3、理解 Layout Controllers(布局控制器)

布局控制器是组件,它控制元素的大小和位置。

Content Size Fitter和Aspect Ratio Fitter:控制自身layout element的大小。

Layout Groups:控制它的子layout element的大小和位置( Horizontal Layout Group, Vertical Layout Group 和Grid Layout Group)

无论布局组被分配的大小,它会尝试分配合适的空间量,它的每个孩子布局元素基于minimum, preferred, and flexible sizes的大小被记录。布局组还可以任意嵌套地通过这种方式。

Grid Layout Group(网格布局组)组件地方在网格中包括其子布局元素,其中每个元素有一个固定的宽度和高度指定其在的网格布局组中的位置。与其他布局组不同,网格布局组忽略由其子布局元素记录的的minimum, preferred, and flexible的大小。

时间: 2024-11-05 04:56:47

uinty3d Auto Layout(自动布局)的相关文章

Auto Layout简单应用——以编码的方式实现Auto Layout自动布局(二)

在上一篇文章iOS学习笔记02——以编码的方式实现Auto Layout自动布局(一)中我们简单的介绍了使用Visual Format Language创建布局约束来实现自动布局,这种方法创建的布局约束能够满足大部分的布局的需求.但是想要实现类似于这样的约束:button.width = 2 * button.height就不能满足要求了,这一篇我们我们简单介绍一下如何创建这样的布局约束. Apple就是非常贴心,它为我们提供了另外一个方法创建类似于view1.attr1 = view2.att

iOS Programming Introduction to Auto Layout 自动布局

iOS Programming Introduction to Auto Layout ? 自动布局 A single application that runs natively on both the iPad and the iPhone is called a universal application. 一个原生的能运行在iPad 和iPhone 的应用叫做universal application? Then select the Homepwner target in the pr

UGUI Auto Layout 自动布局

Layout Element 首先分配 Minimum Size 如果还有足够空间,分配 Preferred Size 如果还有额外空间,分配 Flexible Size 比较特别的是 Flexible,他是代表著整个大小的比例0~1

使用Auto Layout中的VFL(Visual format language)--代码实现自动布局

使用Auto Layout中的VFL(Visual format language)--代码实现自动布局 2014-12-09 10:56 编辑: zhiwupei 分类:iOS开发 来源:机智的新手投稿 6 23450 Auto Layout自动布局VFL 招聘信息: 高级iOS开发工程师 高级PHP开发工程师 iOS高级研发工程师 iOS开发工程师 高级iOS手机应用软件开发工程师(培训讲师) 高级Cocos2d-x游戏开发工程师(培训讲师) iOS手机软件开发工程师 iOS工程师 Web后

【转 iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束

原文网址:http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式的前世今生.本篇文章将详细介绍如何使用自动布局实现不同屏幕尺寸的适配. 添加自动布局约束(下文简称约束)有以下三种方式: 使用Xcode的Interface Builder界面设计器添加并设置约束 通过代码逐条添加约束 通过可视化格式语言VFL添加约束 本文将以一个简单的例子来演示如何使用这几种方式添加约束,

转////iOS 8 Auto Layout界面自动布局系列1-自动布局的基本原理

iOS 8 Auto Layout界面自动布局系列1-自动布局的基本原理 http://blog.csdn.net/pucker/article/details/41832939 标签: iosinterface苹果布局界面 2014-12-10 00:25 11286人阅读 评论(2) 收藏 举报  分类: iOS开发(19)  版权声明:本文为博主原创文章,未经博主允许不得转载. 苹果今年如约放出了新的iPhone 6与iOS 8系统,SDK针对新的设备和系统的界面适配也进行了若干改进,因此

iOS6 自动布局 入门–Auto Layout

目前为止,即使你的界面设计是在合理的复杂度内,你也必须要为之写许多代码来适应变化的布局.现在我相信你会很高兴听到这种情况将不会发生了-对于iPhone与iPad IOS6 带来了一个非常了不起的特征:自动布局. 自动布局不仅能给你的应用带来各种屏幕尺寸设计的支持,做为额外的惊喜,它还能使设计中的各种小事比如多语言环境支持.你从此不必再为你想要支持的各种语言重新设计nibs和storyboards文件,当然这也包括一些从右至左书写的语言比如说希伯来文和阿拉伯语. 这篇教程将向你展示的是如何开始使用

iOS7 自动布局 入门–Auto Layout

目前为止,即使你的界面设计是在合理的复杂度内,你也必须要为之写许多代码来适应变化的布局.现在我相信你会很高兴听到这种情况将不会发生了-对于iPhone与iPad IOS6 带来了一个非常了不起的特征:自动布局. 自动布局不仅能给你的应用带来各种屏幕尺寸设计的支持,做为额外的惊喜,它还能使设计中的各种小事比如多语言环境支持.你从此不必再为你想要支持的各种语言重新设计nibs和storyboards文件,当然这也包括一些从右至左书写的语言比如说希伯来文和阿拉伯语. 这篇教程将向你展示的是如何开始使用

iOS 8 Auto Layout界面自动布局系列5-自身内容尺寸约束、修改约束、布局动画

首先感谢众多网友的支持,最近我实在是事情太多,所以没有写太多.不过看到大家的反馈和评价,我还是要坚持挤出时间给大家分享我的经验.如果你对我写的东西有任何建议.意见或者疑问,请到我的博客留言: http://blog.csdn.net/pucker 好了,言归正传.本系列的前几篇文章讲解了自动布局的原理,以及如何添加约束.这篇文章主要介绍以下内容: 某些用户控件具有自身内容尺寸约束 使用视图调试工具在运行时查看和调试程序界面视图层次.尺寸和自动布局约束 创建约束的对象关联 通过修改约束的常量值.删