2009-02-28 19 views
0

Muhtemelen bir şeyi gerçekten basit bir şeyle özlüyorum ama CALayers'ı görüntüledikten sonra görüntüledikleri zaman eklediklerinde. İşte kullanıyorum kodu: Ben de :) aynı katmanları yeniden ve sadece setContents aracılığıyla (farklı CGImage içeriği ayarlama denedimCALayer görünür hale getirildikten sonra eklendiğinde görüntülenmiyor

[[imageLayers objectAtIndex:0] removeFromSuperlayer]; 
[imageLayers removeObjectAtIndex:0]; 
[[imageLayers objectAtIndex:0] removeFromSuperlayer]; 
[imageLayers removeObjectAtIndex:0]; 
firstImageOffset = (firstImageOffset + 2) % [pieceCache count]; 
int topIndex = (firstImageOffset + 6) % [pieceCache count]; 
int bottomIndex = (firstImageOffset + 7) % [pieceCache count]; 
float xPos = [(CALayer*)[imageLayers lastObject] position].x + kShiftXPixels; 

CALayer* layer1 = [CALayer layer]; 
[layer1 setFrame:CGRectMake(0, 0, kImageWidth, kImageHeight)]; 
[layer1 setContents:(id)[UIImage imageNamed:[[pieceCache objectAtIndex:topIndex] objectForKey:@"image_name"]]]; 
[[[self view] layer] addSublayer:layer1]; 
[layer1 setPosition:CGPointMake(xPos, kTopRowYPos)]; 
[imageLayers addObject:layer1]; 

CALayer* layer2 = [CALayer layer]; 
[layer2 setFrame:CGRectMake(0, 0, kImageWidth, kImageHeight)]; 
[layer2 setContents:(id)[UIImage imageNamed:[[pieceCache objectAtIndex:bottomIndex] objectForKey:@"image_name"]]]; 
[[[self view] layer] addSublayer:layer2]; 
[layer2 setPosition:CGPointMake(xPos, kBottomRowYPos)]; 
[imageLayers addObject:layer2];

, bu da daha spesifik olarak (render durdurmak için katmanı neden olur opaklık 0 olarak ayarlanmış gibi sanki hala 1). Görünüm katmanının alt katmanlarını sıralayarak katmanların aslında görünümün katman ağacında olduğunu doğruladım. Doğru görüntülere sahipler ve doğru pozisyondalar, sadece çizmiyorlar. Herhangi bir yardım büyük takdir edilecektir.

cevap

1

Bunun bir yazım hatasıyla sonuçlandığı ortaya çıkıyor. SetContents'ı aradığım satırlarda, bir CGImage yerine bir UIImage gönderiyorum. Doğru türün gönderilmesi beklenen davranışla sonuçlandı.

İlgili konular