Skip to content

Commit 95ad82b

Browse files
committed
fix: same image key sprite.
1 parent 3d6d1f5 commit 95ad82b

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

Source/SVGAPlayer.m

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ - (void)draw {
137137
self.drawLayer.frame = CGRectMake(0, 0, self.videoItem.videoSize.width, self.videoItem.videoSize.height);
138138
self.drawLayer.masksToBounds = true;
139139
NSMutableDictionary *tempHostLayers = [NSMutableDictionary dictionary];
140-
NSMutableDictionary *tempContentLayers = [NSMutableDictionary dictionary];
140+
NSMutableArray *tempContentLayers = [NSMutableArray array];
141141
for (SVGAVideoSpriteEntity * sprite in self.videoItem.sprites) {
142142
UIImage *bitmap;
143143
if (sprite.imageKey != nil) {
@@ -150,9 +150,10 @@ - (void)draw {
150150
}
151151
SVGAContentLayer *contentLayer = [sprite requestLayerWithBitmap:bitmap];
152152
contentLayer.imageKey = sprite.imageKey;
153-
tempContentLayers[sprite.imageKey] = contentLayer;
153+
[tempContentLayers addObject:contentLayer];
154154
if ([sprite.imageKey hasSuffix:@".matte"]) {
155155
CALayer *hostLayer = [[CALayer alloc] init];
156+
hostLayer.frame = contentLayer.frame;
156157
hostLayer.mask = contentLayer;
157158
[self.drawLayer addSublayer:hostLayer];
158159
tempHostLayers[sprite.imageKey] = hostLayer;
@@ -184,10 +185,8 @@ - (void)draw {
184185
}
185186
}
186187
}
187-
_contentLayers = tempContentLayers.allValues;
188-
// [self.videoItem.sprites enumerateObjectsUsingBlock:^(SVGAVideoSpriteEntity * _Nonnull sprite, NSUInteger idx, BOOL * _Nonnull stop) {
189-
190-
// }];
188+
_contentLayers = tempContentLayers;
189+
191190
[self.layer addSublayer:self.drawLayer];
192191
NSMutableArray *audioLayers = [NSMutableArray array];
193192
[self.videoItem.audios enumerateObjectsUsingBlock:^(SVGAAudioEntity * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {

0 commit comments

Comments
 (0)