Tôi có một cửa sổ có chứa điều khiển NSBox. Trong đó NSBox là một số điều khiển khác, (cửa sổ bật lên, trường văn bản, v.v ...)Chế độ xem lớp được chiếu và điều khiển nhấp nháy
Tôi có hai NSBox khác trong cùng một tệp NIB được lấp đầy với các điều khiển mà tôi muốn trao đổi với người đầu tiên theo một số điều kiện. Tôi muốn điều này xảy ra với một hiệu ứng mờ dần chéo thoải mái, vì vậy tôi làm như sau:
Trong -awakeFromNib
phương pháp của NSWindowController:
[[self.myWindow contentView] setWantsLayer:YES];
Trong phương pháp của tôi, nơi tôi đang chuyển đổi các quan điểm tôi sử dụng mã này :
[[[self.myWindow contentView] animator] replaceSubview:previousView with:newView];
Điều này làm việc tốt, lượt xem mờ dần như tôi mong đợi. Vấn đề là các điều khiển trên các khung nhìn đôi khi biến mất không có lý do rõ ràng. Nó không phải lúc nào cũng là quan điểm tương tự (mặc dù NSPopUpButtons có vẻ đặc biệt dễ bị nó), và chúng thường xuất hiện trở lại khi chúng tập trung.
Tôi có phải thực hiện tất cả các lớp điều khiển được sao lưu không?
Cập nhật: Gói hoạt ảnh trong nhóm rõ ràng không tạo nên bất kỳ sự khác biệt nào. Bật setWantsLayer trong tệp Nib cũng không tạo ra sự khác biệt, nhưng điều thú vị là khi tôi làm như vậy, NSPopupbuttons biến mất cho đến khi chế độ xem có chứa của chúng được nhấp vào. Thiết lập Layer bằng tay trên NSPopupbuttons cũng không tạo nên sự khác biệt.
Dường như những người khác đã có vấn đề này, nhưng tôi không thể tìm thấy bất kỳ giải pháp được đăng:
http://www.cocoabuilder.com/archive/message/cocoa/2008/3/30/202691 http://www.cocoabuilder.com/archive/message/cocoa/2008/4/25/205134
Tôi cũng gặp sự cố này với NSPopUpButtons và CALayers và không tìm thấy giải pháp tốt. –