【Unity笔记】UGUI中Canvas屏幕适配

1、通过RectTransform中的AnchorsPivot来进行控件和窗体的布局适配。

Anchors控制当前Panel相对于父窗体的布局位置,可以设置为居中或者左上角,当父窗体拉伸的时候当前Panel可以自动布局到正确位置。同时这里可以设置拉伸,比如主界面一般是全屏拉伸的,这种情况可以在这里处理。

Pivot是当前控件坐标系的锚点位置,通过代码调整坐标位置的时候需要注意这个的设置。

2、通过CanvasScaler的设置来进行多分辨率适配。
UiScaleMode一般选择Scale With Screen Size,并设置好设计分辨率。其他两个选项都是固定像素大小。

Screen Match Mode中一般选择Expand,它可以保证ui中的所有元素都在屏幕内部。 相对比的一个选项是Shrink,它可以保证不留空白边。

3、多分辨率的思路是Scaler中选择Expand保证所有ui元素在屏幕内部。少部分界面,如主界面、战斗界面等根据需要设置Anchors中的全屏拉伸。注意,这里的拉伸的含义仅仅是设置Panel的宽、高,并不影响子控件的缩放,但是会影响其布局。

4、注意,如果是Prefab加载ui的时候,设置父节点使用transform.SetParent(root, false) 这个函数调用,而不要直接设置parent属性,否则会存在RectTransform大小或坐标错误的问题。

时间: 2024-10-11 05:12:19

【Unity笔记】UGUI中Canvas屏幕适配的相关文章

QML 中的屏幕适配问题

QML 中的屏幕适配问题 其实 QML 中的屏幕适配问题,官方也写了一篇文章,如何在不同分辨率下适配控件大小和图片大小(字体好像没有讲到).虽然文章条理清晰,原理,案例都写得不错,但是总觉得缺点什么.对,就是代码,具体实现的代码.从头到尾,原理阐述清晰,唯独就是不写出具体的代码实现. 有人说,具体的代码实现可能很复杂.倒不至于,这里给出一段最简单的使用纯 QML 实现的 dp,至于 dpi 什么,管它呢. import QtQuick.Window 2.0 import QtQuick 2.5

iOS设计中不同屏幕适配的方法-登陆界面

在iOS的手机界面设计中,由于不同手机类型的手机的尺寸不同,那么在设计手机界面时就得对屏幕进行适配,这里就以登陆界面的设计为例简单说明下 实现屏幕适配的方法:(屏幕自动适配缩放) 效果: 下面就看下代码实现的过程: 1.在代理中实现的代码: AppDelegate.h // 登陆界面设计 #import <UIKit/UIKit.h> #define ScreenHeight [[UIScreen mainScreen]bounds].size.height//屏幕高度 #define Scr

iOS中的屏幕适配之Autolayout(初级)

这是第二篇博客啦啦啦,来来来,嗨起来,今天我们要说的时iOS的屏幕适配,随着APPLE推出的手机越来越多,屏幕的尺寸也越来越多,而屏幕的适配确是相当的麻烦,今天我要说的,网上也许早就有了,我只是说出自己的理解(可能不对啊,勿喷....) Autolayout其实就是约束了,今天讲得是代码添加约束,用到的第三方是Masonry,相信代码写约束的都知道这个第三方库,好了,废话不多说,代码搞起 首先你要去下载个Masonry,或者用cocoapods加到工程中,先来个简单点得例子啊,下面请重点看注释啊

关于Unity中的屏幕适配

Game视图的屏幕分辨率可以先自定义添加,供以后选择,以下是手游经常用到的分辨率: 1.1136X640,iPhone5 2.1920X1080,横屏 3.1080X1920,竖屏 4.960X640,横屏iPhone4 5.640X960,竖屏iPhone 6.768X1024,ipad 7.800X480 8.480X800 创建一个Canvas节点 Render Mode选择为Screen Space(Overlay)

phaser小游戏框架学习中的屏幕适配

这篇博客主要讲一下上一篇博客的右侧和底部出现的问题.就是页面会有偏移量.说一下这个产生的原因吧. 一开始在构建html页面的时候,习惯性的在页面中加了 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"> 加了这个,导致canvas画出的图在移动端上有些模糊,尤其是后面我们在画

[Unity 笔记] Unity3D中水面的优化思路

(Unity 学习笔记) Unity自带的Water系统,分两种Simple和Pro Water Simple 的反射是依靠反射贴图Cubemap,通过水面的入射和反射和法线等信息,计算得到反射贴图的某一点的color. 而Water Pro的反射 是 依靠 实时生成反射贴图,来得到反射效果. Water Simple的运行损耗小,但是效果差. Water Pro的效果好,但是运行损耗很大. 思考了如何优化水面效果. 1.可以中和两种方式,采用多个预设的cubemap(不同位置得到.可通过cam

Andriod中的屏幕适配

mm : millmeters , 毫米 , 关于屏幕的物理尺寸. in : inches , 英寸 , 关于屏幕的物理尺寸. pt : points , 一个标准单位,大小为一英寸屏幕大小的1/72. dpi : dots per inch , 每英寸点数,是一个计量单位,指每一英寸长度中,取样.可显示的=或输出点的数目. px : pixel , 即像素,1px代表屏幕上的一个物理的像素点.1920×720:指的是屏幕分辨率,分辨率(Resolution),指的是设备屏幕横向和纵向的像素个数

Android 开发中的屏幕适配技术详解

Unity 手机屏幕适配

////如有侵权 请联系我进行删除 email:[email protected] 1.游戏屏幕适配 屏幕适配是为了让我们的项目能够跑在各种电子设备上(手机,平板,电脑) 那么了解是适配之前首先要了解两个知识点: 1-1.什么是像素? 单位面积中构成图像的点的个数. 特点:单位面积内的像素越多,分辨率越高,图像的效果就越好. 1-2.什么是分辨率? 分辨率可以从显示分辨率与图像分辨率两个方向来分类. 示分辨率(屏幕分辨率)是屏幕图像的精密度,是指显示器所能显示的像素有多少.分辨率的单位有:(dp