zoukankan      html  css  js  c++  java
  • cocosCreator多种屏幕适配方案

    cocosCreator2.2.0以上版本测试过,低版本未测试。适用多种屏幕(大屏,小屏,异形屏等)。

    下面附上代码:

    start(){

      this.resetSize(this.node);

    }

    /**
         * 手机屏幕适配
         * @param cav 
         */
        resetSize(cav) {
            let frameSize = cc.view.getFrameSize();
            let designSize = cc.view.getDesignResolutionSize();

            if (frameSize.width / frameSize.height > designSize.width / designSize.height) {
                cav.width = designSize.height * frameSize.width / frameSize.height;
                cav.height = designSize.height;
                cav.getComponent(cc.Canvas).designResolution = cc.size(cav.width, cav.height);
            } else {
                cav.width = designSize.width;
                cav.height = designSize.width * frameSize.height / frameSize.width;
                cav.getComponent(cc.Canvas).designResolution = cc.size(cav.width, cav.height);
            }
            this.fitScreen(cav, designSize);
        }
        /**
         * 背景适配
         * @param canvasnode 
         * @param designSize 
         */
        fitScreen(canvasnode, designSize) {
            let scaleW = canvasnode.width / designSize.width;
            let scaleH = canvasnode.height / designSize.height;

            let bgNode = canvasnode.getChildByName('background');
            let bgScale = canvasnode.height / bgNode.height;
            bgNode.width *= bgScale;
            bgNode.height *= bgScale;
            if (scaleW > scaleH) {
                bgScale = canvasnode.width / bgNode.width;
                bgNode.width *= bgScale;
                bgNode.height *= bgScale;
            }
        }
  • 相关阅读:
    Android——DEBUG 堆栈
    mycat读写分离与主从切换
    【測试工具】一个将Unix时间转换为通用时间的工具
    jQuery:多个AJAX/JSON请求相应单个回调
    iOS开发中经常使用的Xcode插件
    JAVA学习第二十六课(多线程(五))- 多线程间的通信问题
    我的mac OSX bash_profile文件
    angular学习(二)—— Data Binding
    python 读取grib grib2
    linux获取内存、cpu、负载、网口流量、磁盘信息
  • 原文地址:https://www.cnblogs.com/color123456/p/12460866.html
Copyright © 2011-2022 走看看