2.x的折叠屏适配方案。
protected onLoad(): void {
this.fit()
cc.view.setResizeCallback(()=>{
this.fit()
});
}
protected fit(): void {
const canvas = this.node.getComponent(cc.Canvas);
const designSize = canvas.designResolution;
const designRatio = designSize.height / designSize.width;
const currSize = cc.winSize;
const currRatio = currSize.height / currSize.width;
if (currRatio < designRatio) {
// 适配高度
canvas.fitWidth = false;
canvas.fitHeight = true;
}
else {
// 适配宽度
canvas.fitWidth = true;
canvas.fitHeight = false;
}
}
该适配方案适配可用很好的适配2.x的版本,无论是从展开态到折叠态还是从折叠态到展开态都能很好的适配。但是这个方案在3.x的版本没效果了。也试过setDesignResolutionSize这个方法,从折叠态到展开态相互切换过程中,还是出现屏幕截断或者黑边的问题。有没有人有更好的解决方案。