NSBox denetimi içeren bir pencerem var. Bu NSBox içinde başka denetimler, (popup'lar, metin alanları, vb ...) vardır.Tabaka Destekli Görünümler ve Titreşim Denetimleri
Aynı NIB dosyasında başka bir NSBox'ım var. koşullar. Ben bu güzel çapraz solmaya etkisi ile gerçekleşmesini istiyorum, bu yüzden aşağıdakileri yapın: my yöntemde
[[self.myWindow contentView] setWantsLayer:YES];
Ben bu kodu kullanın görünümler arasında geçiş ediyorum: NSWindowController en -awakeFromNib
yöntemde
:
Bu sadece iyi çalışır[[[self.myWindow contentView] animator] replaceSubview:previousView with:newView];
, görünümler ben beklediğiniz gibi solmaya çapraz. Sorun şu ki, görüşlerin üzerindeki kontroller bazen belirgin bir nedenden ötürü yok oluyor. Her zaman aynı görünümler değildir (NSPopUpButtons özellikle buna eğilimlidir) ve genellikle odaklandıklarında tekrar görünürler.
Tüm denetimler katmanını da yedeklemek zorunda mıyım?
Güncelleştirme: Animasyonu açık gruplamada kaydırma hiçbir fark yaratmadı. Nib dosyasındaki setWantsLayer öğesinin açılması da bir fark yaratmadı, ancak ilginç olan şey, bunu yaptığımda NSPopupbuttons'un içerdiği görünüm tıklanıncaya kadar kaybolmasıdır. Katmanın NSPopup düğmelerinin el ile ayarlanması da bir fark yaratmadı. bir görünüm katmanı tüm subviews katman destekli olacak desteklenmektedir
http://www.cocoabuilder.com/archive/message/cocoa/2008/3/30/202691 http://www.cocoabuilder.com/archive/message/cocoa/2008/4/25/205134
Ben de NSPopUpButtons ve CALayers ile bu sorunu yaşadım ve iyi bir çözüm bulamadık. –