layabox手游全面屏、ipad屏幕适配方案

server/2024/10/21 5:47:20/

1设置

手游平台在项目设置中,场景适配模式选择”固定宽模式 fixedwidth“,设计宽度以全面屏比例为主,我这里设置的设计宽高为640 * 1386

2代码和场景

laya的UI面板有三种类型,分别是Scene、View和Dialog

1)Scene和View

其中Scene和View的适配是一致的

(1)在场景中添加box类型的UI,并做如下设置。

重点关注要吧该场景下所有需要做适配的UI(通常背景不需要)放到该box下,box的宽高要与设计宽高一致,并且让这个box始终居中

(2)添加代码

只需要在对应的runtime脚本文件的onEnable函数中添加如下代码,重点是要让该场景的宽高与舞台宽高一致,并且等比例缩放UI

private init(): void {let scale = Laya.stage.height / this.height;this.height = Laya.stage.height;this.box.scale(scale, scale);
}

2)Dialog

一般Dialog由于UI较小不需要做适配,如果是全面屏大小的Dialog可以参照上面的配置,或着调整各个UI的相对位置,在Dialog的runtime脚本设置宽高为舞台高度即可。

3总结

手游的适配是一个很灵活的事情,需要按照实际情况做对应处理,例如某些大地图游戏,需要移动屏幕活着地图,这种对于地图来说就无需缩放,但遍布在屏幕上的控制类型的UI可能就需要适配。


http://www.ppmy.cn/server/18140.html

相关文章

leetcode2418.按身高排序

题目描述: 给你一个字符串数组 names ,和一个由 互不相同 的正整数组成的数组 heights 。两个数组的长度均为 n 。 对于每个下标 i,names[i] 和 heights[i] 表示第 i 个人的名字和身高。 请按身高 降序 顺序返回对应的名字数组 names 。 …

信号量和互斥锁的区别

信号量和互斥锁都是用于多线程编程中的同步机制,但它们在用途和操作上存在一些差异。具体分析如下: 用途:互斥锁(Mutex)主要用于实现线程间的互斥,即确保同一时刻只有一个线程能够访问共享资源或临界区。它…

LeetCode39:组合总和

题目描述 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制重复被…

JavaScript-Vue入门

本文主要测分享Vue的一些基础 Vue简介 Vue.js 是一个构建数据驱动的 web 界面的渐进式框架。它的主要目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。 下是一些 Vue 的主要特点和概念: 1. 响应式数据绑定:Vue 使用基于 HTML 的模板语法…

【MySQL】DML

1、DML简介 DML(Data Manipulation Language、数据操作语言),用于添加、删除、更新和查询数据库记录,并检查数据完整性。 2. 添加数据 2.1 使用关键字 使用 INSERT 语句向表中插入数据。使用 VALUES语句添加 2.2 使用情况 2.2…

【C++】封装、继承和多态

引言 在现代软件开发中,面向对象编程(Object Oriented Programming)已经成为一种广泛应用的编程范式。C作为一种支持面向对象编程的语言,在封装、继承和多态方面提供了强大的特性。本文将介绍C中的封装、继承和多态概念&#xff…

Spark AQE 导致的 Driver OOM问题

背景 最近在做Spark 3.1 升级 Spark 3.5的过程中,遇到了一批SQL在运行的过程中 Driver OOM的情况,排查到是AQE开启导致的问题,再次分析记录一下,顺便了解一下Spark中指标的事件处理情况 结论 SQLAppStatusListener 类在内存中存…

科技论文网站:中国科技论文在线

文章目录 1. Intro2. Main3. Cons Evaluation彩蛋:科学素质 这是作者最后一次发 这种类型的宣传 科普文章 1. Intro 中国科技论文在线是经教育部批准,由教育部科技发展中心主办, 利用现代信息技术手段,打破传统出版物的概念&…