This sample works exactly as mine - the button remains on the screen
completely opaque and the suddenly disappears after 0.25 secs pass.
(Snow Leopard)

So i guess unless i find time to read that huge guide about Core
Animation and manage to adapt CAAnimation, i will use that approach
with [[myview animator] setAlphaValue:0.0]; and a timer that hides the
view, which was suggested by Chase


2011/5/20 Quincey Morris <quinceymor...@earthlink.net>:
> On May 19, 2011, at 15:01, Nick wrote:
>
>> No, only fade out (and fade in) effects are needed. I just added frame
>> movement to see if animation works at all. Animation does work, but
>> the fade does not happen - no matter, if the frame is moved
>> simultaneously or not.
>
> Here's my actual code for doing this. It works.
>
>>       NSMutableArray* dictionaries = [NSMutableArray array];
>>
>>       //      Create a dictionary for the animation parameters
>>
>>       NSMutableDictionary* dictionary = [NSMutableDictionary 
>> dictionaryWithObject: subview forKey: NSViewAnimationTargetKey];
>>       [dictionaries addObject: dictionary];
>>
>>       //      Add a key for the target frame rect, if necessary
>>
>>       if (!shouldBeHidden || !NSEqualRects (oldFrameRect, newFrameRect))
>>               [dictionary setObject: [NSValue valueWithRect: newFrameRect] 
>> forKey: NSViewAnimationEndFrameKey];
>>
>>       //      If the visibility is changing, add a key for the fade in or out
>>
>>       if (!isHidden != !shouldBeHidden)
>>       {
>>               [dictionary setObject: shouldBeHidden ? 
>> NSViewAnimationFadeOutEffect : NSViewAnimationFadeInEffect forKey: 
>> NSViewAnimationEffectKey];
>>
>>               //      Work around a Snow Leopard bug ...
>>
>>               if (!shouldBeHidden)
>>                       [subview setHidden: shouldBeHidden];
>>       }
>>
>>       //      Create the animation
>>
>>       NSViewAnimation* viewAnimation = [[NSViewAnimation alloc] 
>> initWithViewAnimations: dictionaries];
>>
>>       viewAnimation.duration = 0.25;
>>       viewAnimation.animationCurve = NSAnimationEaseIn;
>>
>>       [viewAnimation startAnimation];
>
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to