36 lines
1.2 KiB
TypeScript
36 lines
1.2 KiB
TypeScript
// ScreenAdapter.ts
|
|
import { _decorator, Component, view, ResolutionPolicy } from 'cc';
|
|
const { ccclass, property } = _decorator;
|
|
|
|
@ccclass('ScreenAdapter')
|
|
export class ScreenAdapter extends Component {
|
|
@property
|
|
designWidth: number = 1080; // 默认设计宽度
|
|
|
|
@property
|
|
designHeight: number = 1920; // 默认设计高度
|
|
|
|
onLoad() {
|
|
this.applyAdapter();
|
|
}
|
|
|
|
/**
|
|
* 应用屏幕适配
|
|
*/
|
|
applyAdapter() {
|
|
// const frameSize = view.getFrameSize();
|
|
// const aspect = frameSize.width / frameSize.height;
|
|
// const designAspect = this.designWidth / this.designHeight;
|
|
|
|
// if (aspect > designAspect) {
|
|
// // 屏幕更宽 → 固定高度,保证上下完整
|
|
// view.setDesignResolutionSize(this.designWidth, this.designHeight, ResolutionPolicy.FIXED_HEIGHT);
|
|
// console.log('[ScreenAdapter] Use FIXED_HEIGHT, aspect =', aspect.toFixed(2));
|
|
// } else {
|
|
// // 屏幕更窄 → 固定宽度,保证左右完整
|
|
// view.setDesignResolutionSize(this.designWidth, this.designHeight, ResolutionPolicy.FIXED_WIDTH);
|
|
// console.log('[ScreenAdapter] Use FIXED_WIDTH, aspect =', aspect.toFixed(2));
|
|
// }
|
|
}
|
|
}
|