[]分享:TiledMap设置viewport后黑屏问题!

tiledMap默认是没有宽高的,所以我们在设置viewport的时候,要为tiledMap设置一个宽高,否则tiledMap将可能会被裁剪掉,设置方式如下:
package
{
import laya.display.Sprite;
import laya.display.Stage;
import laya.map.TiledMap;
import laya.maths.Rectangle;
import laya.utils.Handler;

public class LayaAirDemo
{
private var tiledMap:TiledMap;

public function LayaAirDemo()
{
// 不支持WebGL时自动切换至Canvas
Laya.init(1100, 800);

Laya.stage.alignV = Stage.ALIGN_MIDDLE;
Laya.stage.alignH = Stage.ALIGN_CENTER;

Laya.stage.bgColor = "#232628";
Laya.stage.viewport=new Rectangle(0,0,300,300);
createMap();
}

private function createMap():void
{
tiledMap = new TiledMap();
tiledMap.createMap("res/tiledMap/orthogonal-test-movelayer.json", new Rectangle(0, 0, Laya.stage.width, Laya.stage.height), Handler.create(this,onLoaded));

}
//切记:设置tiledMap的宽高,需要在地图创建完成之后
private function onLoaded():void
{
var sp:Sprite=tiledMap.mapSprite() as Sprite;//为tiledMap整个地图的显示容器设置宽高
sp.size(800,800);
}
}
}
已邀请:

Monica - 知识达人

赞同来自:

谢谢分享~\(≧▽≦)/~

要回复问题请先

商务合作
商务合作