У меня возникли проблемы с CCLayerPanZoom в течение нескольких недель, и, наконец, я был близок, но у меня все еще проблема. У меня есть карта плитки, которая имеет довольно большой размер 8000 пикселей x 8000 пикселей, и то, что я бы хотел, имеет возможность приблизить до 2.0f и уменьшить масштаб до около 0.4f. Следующий код отлично работает, поскольку он позволяет мне перемещаться по всей моей карте плитки и НЕ проходить мимо краев - общая проблема с CCLayerPanZoom, однако код не позволит увеличивать или уменьшать масштаб. Я уже прокомментировал minScale и maxScale, так как ни один из них не работает. Я попытался изменить местоположение minScale и maxScale, и он нигде не работает. Есть ли у кого-нибудь идеи, как заставить minScale и maxScale работать, поэтому масштабирование будет функционировать?CCLayerPanZoom не будет увеличивать или уменьшать масштаб
//PanZoomLayer
_panZoomLayer = [[CCLayerPanZoom node] retain];
[self addChild: _panZoomLayer];
_panZoomLayer.delegate = self;
[_panZoomLayer addChild: _tileMap z :1 tag: kBackgroundTag];
_panZoomLayer.mode = kCCLayerPanZoomModeSheet;
_panZoomLayer.rubberEffectRatio = 0.0f;
CCNode *backgroundZ = [_panZoomLayer getChildByTag: kBackgroundTag];
CGRect boundingRect = CGRectMake(0, 0, 0, 0);
boundingRect.size = [backgroundZ boundingBox].size;
[_panZoomLayer setContentSize: boundingRect.size];
_panZoomLayer.anchorPoint = ccp(0.5f, 0.5f);
_panZoomLayer.position = ccp(0.5f * winSize.width, 0.5f * winSize.height);
_panZoomLayer.panBoundsRect = CGRectMake(0, 0, winSize.width, winSize.height);
_panZoomLayer.minScale = 0.4f;
_panZoomLayer.maxScale = 2.0f;
//end PanZoomLayer