什么是UI元素的相对自适应

  UI元素的相对自适应,顾名思义,是指两个UI元素之间保持一种相对的位置不要变化,例如,UI元素A永远处于UI元素B右边的50像素处位置。再比如,一个UI背景框,不论屏幕尺寸怎么变化,框的左边缘永远距离屏幕左边100像素,框的右边缘永远距离屏幕右边100像素。

Anchors的介绍及使用

  Anchor的主要作用是一个组件,它将会自动去寻找摄像机的边缘和中心点一共9个点,以此作为基准点进行定位适配。而Anchors(为了 区分,以下皆用相对Anchors来形容)是每一个UI控件都会附带的选项,它能为每一个UI控件设定绑定对象和绑定的方式。默认情况下为none,意味着控件默认情况下无相对定位。

  Anchors设置:

    Type为Anchors定位的类型,一共有None(默认状态,无相对定位)、Unified(统一的标准定位)、Advanced(高级定位)。统一的标准定位和高级定位之间的区别在于,高级定位能够有更加复杂的定位设置,但它们的定位原理是一样的。

    Execute选项为设定相对定位执行的时机,一共有3个选项可以选择:OnUpdate、OnEnable和OnStart,Update、Start、OnEnable是Unity中脚本自动执行的函数,如果选择了OnUpdate,则这个空间的定位会随着每一帧去进行更新,如果选择了OnEnable,那么意味着这个空间只会在激活的时候更新一次定位,然后不再更新,直到下次激活再进行更新,如果选择了OnStart,那么这个控件在场景加载之后只会更新一次相对定位信息。一般来说,为了节省性能有照顾需求,会选择OnEnable。

    Target选项为这个控件相对位置选取的参照物,也就是这个控件以哪一个物体作为锚点来进行相对位置的绑定。

    下面的4个选项:Left、Right、Bottom、Top。它们的作用是设置这个控件的4个边的对位信息,在每个选项旁边的下拉菜单中选择Target's Center(以目标点的中心点作为参照)等目标体身上的参照点,最右边的数字表示的是像素偏移,加号为向X轴正向偏移一定像素,减号为向X轴负向参照目标点偏移一定像素。

    Anchors适配的核心原理为:为该控件的4条边分别设定相对位置的参照点,这个参照点可以选择参照物体身上的中点、左边点灯,然后设定一定量的偏移像素。这样当相对Anchors执行时,控件的4条边会分别按照定位信息朝4个方向"拉扯控件",来达到相对位置适配的效果。所以,Anchors本质上市点对点的(自身控件的4条边的终点,分别去对应一个参照点)。

    Anchors的Advance模式比Unified多了一些功能,可以给控件的4边分别设置不同的参照物。

使用Anchors的注意事项

  (1)Anchors需要对每个控件都进行详细的锚点定位设置,工作量巨大,所以,在没有必要的情况下,尽量用Anchor组件,可以减少很多工作量。

  (2)使用Anchors时一定要切记它在屏幕分辨率变化的情况下,很可能会导致控件形变(控件4边被拉发生变形)。

  (3)如果一定要使用Anchors,又不希望它形变,就将Anchors的4边定位都以目标物体的同一个点(如Target's Center)作为参照点。

UI元素的相对自适应的更多相关文章

  1. CSharpGL(6)在OpenGL中绘制UI元素

    CSharpGL(6)在OpenGL中绘制UI元素 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharpGL源码中包含10多个独立的Demo,更适合入 ...

  2. 【Win 10 应用开发】打印UI元素

    Windows App支持将UI界面进行打印的功能,这与浏览器中的打印网页的用途相近,其好处就是“所见即所得”,直接把界面上呈现的内容打印下来,比重新创建打印图像方便得多. 要在通用App中实现打印, ...

  3. 10套免费的 Photoshop UI 元素以及 PSD 素材

    免费的 PSD 用户界面工具包以及可以编辑 Photoshop PSD 文件,有你需要的设计漂亮的用户界面和惊人使用体验.这些用户界面工具包可有免费下载,可随意定制的,而且这些 PSD 分层素材文件组 ...

  4. 怎样进行Android UI元素设计

    Android UI元素里面包含了许多的内容,比如:该平台由操作系统.中间件.用户界面和应用软件组成,一个应用程序要想受用户喜爱,那么UI可不能差. Android为相似的编程名词引入了一些新的术语, ...

  5. 使用float属性布局时父元素高度不能自适应的解决方法

    在网页的布局过程中,经常会用到float属性来实现页面的左右布局,但是有个问题就是父元素的高度并不能根据子元素的高度自适应.比如下面这段代码: <!DOCTYPE html> <ht ...

  6. appium— Android定位webView里面的UI元素

    Android SDK中的UIAutomator中本身是不支持网页中的UI元素定位,下面介绍几种常用的定位app内部的网页的UI元素的方法. 一.使用chrome浏览器调试移动端网页 这是使用最多的一 ...

  7. 动态控制C4C UI元素的显示和隐藏

    C4C UI上UI元素的显示和隐藏可以通过Key User在Adaptation模式里通过编辑一些简单的rule去控制,诸如这种格式: if ( logic expression = true ) t ...

  8. css 选择器 & UI元素的伪类选择器 & 伪元素选择器

    UI元素的伪类选择器 1. :focus  用来选取获取焦点事件 2. :enabled 用来指定当元素处于可用状态时的样式 3. :disable  用来指定元素处于不可用时的状态    表单里应用 ...

  9. 巧用Drawable 实现Android UI 元素间距效果

    源文地址: 巧用Drawable 实现Android UI 元素间距效果 在大部分的移动UI或者Web UI都是基于网格概念而设计的.这种网格一般都是有一些对其的方块组成,然后它们组合成为一个块.使用 ...

随机推荐

  1. ie6/7/8中span右浮动折行问题的解决方案

    浮动标准: W3C CSS 2.1 规范文档里对于浮动元素与非浮动行内元素相邻时的情况有如下解释.以下是关键段落: A floated box is shifted to the left or ri ...

  2. CSS的总结(选择器,伪类等...)

    关于组合选择器可参考:http://www.cnblogs.com/starof/p/4453458.html 主要内容 CSS概述 CSS和HTML结合的四种方式 CSS样式优先级和代码规范 CSS ...

  3. 理解Android系统的进程间通信原理(二)----RPC机制

    理解Android系统中的轻量级解决方案RPC的原理,需要先回顾一下JAVA中的RMI(Remote Method Invocation)这个易于使用的纯JAVA方案(用来实现分布式应用).有关RMI ...

  4. Nginx - Additional Modules, Content and Encoding

    The following set of modules provides functionalities having an effect on the contents served to the ...

  5. Android Support v4,v7,v13

    Android Support v4 是最早(2011年4月份)实现的库.用在Android1.6 (API lever 4)或者更高版本之上.它包含了相对V4, V13大的多的功能. 例如:Frag ...

  6. money 转换成 varchar

    Sql :cast(sum(colname) as varchar) 或者 convert(varchar,sum(colname)) ),sum(colname))

  7. 微信之Android各版本列表

    微信在不断地更新迭代,ios微信下载点击这里立即开始(手机电脑都可以,电脑端要安装iTunes),每个版本都放出一些新的功能或修复相关错误,详情可以点击下面的版本链接进行查看.(这里有Android微 ...

  8. Access和Sql区别

    假设表game有一字段为gameYuiJian为bit字段(SQL SERVER 20005)和"是/否"字段(ACCSS数据库),在编写脚本文件时,如下才能正确执行 SQL st ...

  9. 了解下SoftReference

    昨天同事看到别人一段关于实现缓存功能的代码,看完之后他有点不明觉厉,哈哈,然后就给周围同事也看了下,可能之前大家都没用过SoftReference,所以并不明白是如何实现的. 于是我就把代码要了过来, ...

  10. oracle instantclient basic +pl/sql 安装和配置

    oracle instantclient basic +pl/sql 安装和配置 大家都知道,用PL/SQL连接Oracle,是需要安装Oracle客户端软件的,oracle客户端有点大,比较耗资源. ...