Commit 77ea3b05 authored by liujiangnan's avatar liujiangnan

feat: 尺寸适配

parent 0bb519c8
{
"ver": "1.1.0",
"uuid": "9b322003-d848-4b51-b4a2-e6de8c4daaf1",
"subMetas": {}
}
\ No newline at end of file
......@@ -62,8 +62,6 @@ export default class NewClass extends middleLayerBase {
this.hideWaitingLetters();
}
// 统一释放异步资源的方法
onLoad() {
initAir(this);
......@@ -85,7 +83,6 @@ export default class NewClass extends middleLayerBase {
cc.find('middleLayer/Page').active = false;
cc.find('middleLayer/ExitBtn').active = false;
// if (this.type == '') {
// await this.asyncCallNetworkApiGet(`/api/aixuebao/v1/engine/active`, {
// engineid: this.engine_uuid,
......@@ -102,7 +99,13 @@ export default class NewClass extends middleLayerBase {
cc.sys.localStorage.setItem('activeSyllabuses', sylles);
this.showWaitingLetters();
this.loadOnlineBundle("cartoon_main");
this.loadOnlineBundle("cartoon_main", () => {
// 记录一个初始的缩放值 用于适配
const canvas = cc.find('Canvas');
const middleLayer = cc.find('middleLayer');
const sc = canvas.height / middleLayer.height;
this.BASE_SCALE = sc;
});
} else {
cc.find(`middleLayer/activeLayer`).active = true;
}
......@@ -143,7 +146,7 @@ export default class NewClass extends middleLayerBase {
this.showWaitingLetters();
this.loadOnlineBundle("cartoon_main");
}, 0.5)
})
buttonOnClick(cc.find('middleLayer/BtnRight'), () => {
if (this.isShowWaiting) {
......@@ -160,7 +163,7 @@ export default class NewClass extends middleLayerBase {
} else {
cc.find('middleLayer/BtnRight').active = true;
}
}, 0.5);
});
buttonOnClick(cc.find('middleLayer/BtnLeft'), () => {
if (this.isShowWaiting) {
......@@ -177,7 +180,7 @@ export default class NewClass extends middleLayerBase {
} else {
cc.find('middleLayer/BtnRight').active = true;
}
}, 0.5);
});
buttonOnClick(cc.find('middleLayer/activeLayer/active'), async () => {
if (this.isShowWaiting) {
......
......@@ -16,6 +16,7 @@ export abstract class middleLayerBase extends cc.Component {
abstract hideWaitingLetters(): void;
abstract showWaitingLetters(): void;
BASE_SCALE;
onMiddleLayerLoadingFinish() {
if (cc.sys.isNative && cc.sys.os == cc.sys.OS_IOS) {
......@@ -160,6 +161,34 @@ export abstract class middleLayerBase extends cc.Component {
this.loadBundle(sceneName, version, bondleUrl);
}
setBtnLayer() {
const sc = this.BASE_SCALE;
const middleLayer = cc.find('middleLayer');
const extBtn = cc.find(`ExitBtn`, middleLayer);
extBtn.x = 0 - (middleLayer.width/2-8);
extBtn.y = middleLayer.height/2-8;
extBtn.width = 45 / sc;
extBtn.height = 45 / sc;
const rightBtn = cc.find(`BtnRight`, middleLayer);
rightBtn.x = middleLayer.width/2-8;
rightBtn.y = middleLayer.height/2-8;
rightBtn.width = 45 / sc;
rightBtn.height = 45 / sc;
const leftBtn = cc.find(`BtnLeft`, middleLayer);
leftBtn.x = middleLayer.width/2-108;
leftBtn.y = middleLayer.height/2-8;
leftBtn.width = 45 / sc;
leftBtn.height = 45 / sc;
const page = cc.find(`Page`, middleLayer);
page.x = middleLayer.width/2-53;
page.y = middleLayer.height/2-6;
page.width = 60 / sc;
page.height = 45 / sc;
}
async loadBundle(sceneName, version, bondleUrl, callback = null) {
this.currentBundleInfo = { sceneName, version, bondleUrl };
this.showWaitingLetters();
......@@ -180,9 +209,10 @@ export abstract class middleLayerBase extends cc.Component {
const canvas = cc.find('Canvas');
const middleLayer = cc.find('middleLayer');
canvas.getComponent(cc.Widget).updateAlignment();
middleLayer.scale = canvas.width / middleLayer.width;
const sc = canvas.height / middleLayer.height;
middleLayer.scale = sc;
this.setBtnLayer(sc);
callback && callback();
// this.showLog('middleLayer.scale = ' + middleLayer.scale);
});
});
});
......@@ -239,12 +269,8 @@ export abstract class middleLayerBase extends cc.Component {
this.courses = data.rows;
this.courseIndex = data.index || 0;
this.courseItem = data.rows[this.courseIndex];
console.log('-----------------');
console.log("jfdlisjlfiasjdjl");
console.log('-----------------');
cc.find('middleLayer/Page').active = true;
cc.find(`middleLayer/Page`).getComponent(cc.Label).string = `1/${this.courses.length}`;
cc.find(`middleLayer/Page/text`).getComponent(cc.Label).string = `1/${this.courses.length}`;
} else {
this.hideWaitingLetters();
this.showTips(`内容还未制作`);
......@@ -299,7 +325,7 @@ export abstract class middleLayerBase extends cc.Component {
(<any>window).courseware.freeAllOcMethod();
cc.find(`middleLayer/Page`).getComponent(cc.Label).string = `${index + 1}/${this.courses.length}`;
cc.find(`middleLayer/Page/text`).getComponent(cc.Label).string = `${index + 1}/${this.courses.length}`;
this.courseIndex = index;
this.courseItem = this.courses[this.courseIndex];
this.loadPageBundle();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment