1234567891011121314151617181920212223242526272829303132333435363738394041 |
- const { ccclass, property } = cc._decorator;
- @ccclass
- export default class Adapt extends cc.Component {
- @property(cc.Widget)
- widget: cc.Widget = null
- private _dw = 750
- private _dh = 1334
- /**
- * 专门针对 竖屏 h5 适配
- */
- protected onLoad(): void {
- if(cc.sys.platform === cc.sys.DESKTOP_BROWSER || cc.sys.platform === cc.sys.MOBILE_BROWSER){
- this._adapt()
- }
- }
- private _adapt() {
- // 设计尺寸比例
- let drate = this._dw / this._dh
- // 实际尺寸比例
- let preate = cc.winSize.width / cc.winSize.height
- if (preate <= drate) {
- cc.view.setDesignResolutionSize(this._dw, cc.winSize.height, cc.ResolutionPolicy.FIXED_WIDTH);
- this.widget.left = 0
- this.widget.right = 0
- } else {
- let r = cc.winSize.height / this._dh
- cc.view.setDesignResolutionSize(this._dw / r, this._dh / r, cc.ResolutionPolicy.FIXED_WIDTH);
- let gap = cc.winSize.width - this._dw
- this.widget.left = gap / 2
- this.widget.right = gap / 2
- }
- this.widget.updateAlignment();
- }
- }
|