Coconut oil! Apply sparingly to dry hair, work it into the ends, wrap hair in cling film and then in a towel that's been on a radiator. Leave it for half an hour. Rub shampoo into your hair without applying water first, them rinse out. Shampoo again normally, and dry your hair, using a heat protection spray first. Works a charm - I did this to my hair when I over-bleached it once and left it like straw and was amazed! Get a pot of pure coconut oil from the 'world foods' aisle in sainsburys rather than the hair care section, it's a fraction of the price!
Agree, coconut oil does a fab job. But also try a clarifying shampoo - it may be that you have a build up of silicone and products (that is what happened to me), and you need to strip that off before any moisture will get into your hair.