I have a pop up menu. What is said to be easier on the users' eyes? Should I just have it appear immediately using
visibility = true or should I have it fade in using opacity animation?
Users hate slow UIs, just as they hate slowly loading websites. Pop in, fade out.
Your users are not here to admire your application. It's just a tool to help them achieve a goal, and when that's done, it doesn't matter how pretty the app - they're out of there. Now, that doesn't mean you should strive for dull, grey, boxy interfaces. But it does mean prioritizing speed of service and accessibility (in the broadest sense of the word).
Why just popping in is bad: Nothing in the real world does that and thus it is disorienting for users. If something in the natural moved that fast and stopped right in front of us it would be startling, haha. The user must take a few moments to reorient themselves and return to scanning the new window.
Why fading in is bad: It catches the users attention with its movement but then they must wait for it to fully stop animating to scan it. So unless it happens in less than a second, its bad.
My suggestion: what ever transition you do make it happen fast, under 1 sec. (Unless your program is slow and you want to hide that, which in case distract them haha)
If you are going to use a transition effect, it's not a bad idea to actually put some information in it; use the transition to show the user how they got there and how to get back. Fading doesn't really provide much information. Instead, you could have the new content grow over the old content, or have both new and old content slide off one edge and on the other, both in such a way that emphasizes the ui elements the user will use to navigate between the two screens.
All of this should be part of an overall spatial design of the application so that your users can use the visual queues to build a mental understanding of where they are and how each interaction will affect that. If your transitions don't do any of this, then they are just wasteful.
From your question i can gather that you are talking about the user triggering the action. The user clicks on the menu link and then it opens up.
I would suggest an appearance without any animation.
- Animation can slow down the users browser experience why take a chance. I have often seen animation slowing down or hanging my Firefox or Chrome browsers.
- Animation has the effect of something important happening. If you already have the user attention why do it again with a fade in.