I live in an environment that has 60-100 percent humidity during the summer. Shea butter works for me. I have very dense hair (lots of strands) but the strands are fine so the least bit of touching my hair will cause it to get more frizzy. When I wear my hair in a ponytail, the thickness of my hair makes my head look bigger! Weighing my hair down cures the fly-aways and makes it look less dense.
Weighing the hair down is not bad for frizz-prone hair because it needs extra moisture from products. However, weighing hair down only makes oily hair look worse because oily hair does not need extra moisture from products.
I rub shea butter in my hands and apply it to my hair in sections from root to ends (if you do not want it to be greasy, only apply the shea butter on roots or fly-away prone areas).
It works wonders for me. The effect only lasts on my hair for maybe two days but I do not tie up my hair before bed and my hair is not straightened. So for those who sleep in a satin scarf/sleep in a satin bonnet/sleep on a satin pillowcase and/or for those who straighten/perm their hair, one application may last longer.
I have not tried it yet but I have been told that whipping the shea butter with a very small amount of an oil such as olive oil will stretch the butter. If desired, after you apply the shea butter to your hair, you could blast your hair with a blow dryer (always point the blow dryer down when drying hair if you want your hair to hang that way. Holding the blow dryer parallel to the floor while drying will make your hair "poofy.") or cover your hair in a showercap for 15 minutes to deep condition.