showOverlay(layer) {
    this._beforeShowOrEmptyLayer();
    this._overlayPromise = this._overlay.show(layer);
    this._overlayPromise.nodeify(this._afterShowOrEmptyLayer.bind(this));
    return this._overlayPromise;
  }
Shows an overlay layer. Returns a promise that resolves when the content has been fully swapped.
@param {cc.Layer} layer
@returns {Promise}