I swear by Clinique's SFP 30 spray on sunscreen. It's non-greasy and pretty much waterproof. It will make hair look a bit greasy if it gets on it, but if you can miss the hair, you'll be fine.
I usually only reapply it once if I'm outside for long periods of time and I've been using it for years and have never burned, even when at the beach! Just make sure you apply it 20 minutes before going outside for best results. It is a bit pricey (about $16), but well worth it. In fact, I've got to get a new bottle today for our WDW trip next week!
I'm not sure if you can find any sunscreen that won't make your hair greasy.