As part of my hidden UIWidget stuff, the widget has a few buttons on it that I set the isEnabled flag to false when appropriate. This had the effect of the button changing over time to a dark gray color when it appears on screen.
I didn’t want the color to transition, I wanted it to start gray when it appeared. So I added the following lines:
float oldDur = button.duration; button.duration = 0; button.isEnabled = false; button.duration = oldDur;
That did the trick – button appeared gray and didn’t transition.