I've been trying to build a UI that works similar to the example #4 (Controller Input) in the NGUI package. In my own code though I was having a strange problem with the onhover coloring from my UIButton component. It was not working correctly when I transitioned between my different panels using UIButtonPlayAnimation components. In the example, it was working fine.
I was able to reproduce this in the example by recreating the UIButtonPlayAnimations components on "Panel - Main/Window/Button - Options" and "Panel - Options/Window/Button" that drive the transition between panels. I made them so that they were after the UIButtonKeys component and deleted the original ones. When this happens, the tween color stuff that is managed by UIButtonColor (or UIButton) never triggers and so you are left with no onhover highlights after the transition. I was able to get it working again by recreating the UIButtonKeys component and deleting the original which put it after the UIButtonPlayAnimations again.
I just thought I'd let you know since ideally component order shouldn't be necessary, especially since you can't actively reorder them as far as I know. For now, I'll just make sure I keep my ordering correct so I can get my UI working.
Thanks!