Oh man, I feel your pain. While it delights me to no end when people, especially kids, ask me the "Are you a boy or a girl?" question, it also pains me when I can't be completely truthful with them due to the environment. The only time that question is not enjoyable is when an adult says it sneeringly, at which point I'm likely to give a vague, witty (but always good-natured, never rude) retort and leave it at that. However, if a kid asks (even snidely, because being level-headed with kids is my job... often literally) or if an adult asks respectfully, I delight in it. 83
I usually just answer with as much truth as I feel the other grown-ups within hearing distance will let me get away with. If I know a kid's parents and trust that they're accepting, I'll tell the truth and patiently answer as many questions as they feel the need to ask-- I love doing that. However, more often, I'm in a situation (i.e. teaching/tutoring in ultra-conservative Indiana) where I could get in actual trouble for telling the whole truth and nothing but the truth, so I skirt around it and get as close as I can without being too obvious. My last resort answer, which seems to work nicely in a pinch (as I'm an androgynous guy in a currently-female body) is "I'm a tomboy." Not 100% accurate, but it's a safe answer that doesn't completely ignore the truth.
I'm looking forward to the day when my emergency safe-answer can be the somewhat-more-accurate "I'm a boy," and then let my androgyny speak for itself (the earrings and purple glasses usually do a good job of that).