天天看點

android 加入啟動頁(cocos creator)

public class AppActivity extends Cocos2dxActivity {
	
    private static Cocos2dxActivity sCocos2dxActivity;
	
    private static ImageView sSplashBgImageView = null;
	
    private static void showSplash() {
        sSplashBgImageView = new ImageView(sCocos2dxActivity);
       -- sSplashBgImageView.setBackgroundColor(
    --     sCocos2dxActivity.getResources().getColor(R.color.splash_bg)
-- );

        sSplashBgImageView.setImageResource(R.drawable.splash);
        sSplashBgImageView.setScaleType(ImageView.ScaleType.FIT_XY);
        sCocos2dxActivity.addContentView(sSplashBgImageView,
            new WindowManager.LayoutParams(
                FrameLayout.LayoutParams.MATCH_PARENT,
                FrameLayout.LayoutParams.MATCH_PARENT
            )
        );
    }
	
    /**
     * 這是給 CC JS 調用的隐藏原生開屏背景的方法
     */
    public static void hideSplash() {
        sCocos2dxActivity.runOnUiThread(new Runnable() {
            @Override
            public void run() {
                if (sSplashBgImageView != null) {
                    sSplashBgImageView.setVisibility(View.GONE);
                }
            }
        });
    }
	
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        ...
        // DO OTHER INITIALIZATION BELOW
        SDKWrapper.getInstance().init(this);

        // 第一步:在第二階段加入我們的背景View
        sCocos2dxActivity = this;
        showSplash();
    }

    ...
}
           
@ccclass
export default class MainSceneCtrl extends cc.Component {

    start() {
        // 第二步:場景加載之後,隐藏原生純色背景View
        // 這裡延遲1秒是為了更好的體驗,實際可以不用
        this.scheduleOnce(() => {
            this._hideNativeSplash();
        }, 1);
    }

    private _hideNativeSplash() {
        if (CC_JSB) {
            if (cc.sys.os == cc.sys.OS_ANDROID) {
                // 反射調用原生的隐藏方法
                jsb.reflection.callStaticMethod(
                    "org/cocos2dx/javascript/AppActivity",
                    "hideSplash",
                    "()V"
                );
            }
        }
    }
}
           
android 加入啟動頁(cocos creator)