As far as honesty with friends goes, I always aim for honesty in a kind way. Whatever I say, I try and temper it with kindness. There is a way of telling people the truth such that you never hurt them – I’ve seen people do it, and I strive for that.
Not every situation warrants the truth or validation. There are times when you can just say nothing.
When it comes to commentary on someone’s physical appearance, I’m firmly of the opinion that it’s their own opinion of themselves that’s important. I try to figure out if they are happy with whatever it is about their appearance before I say anything. If they are happy with whatever it is (weight, hairstyle, whatever), then I honestly don’t see it as my place to say anything if I don’t like it. If you can ascertain that they are not so happy with whatever it is, then you know that they will be more open to constructive criticism.
For example, with your friend’s hair colour, try to ascertain whether she likes it or not. You could even say “How do you like your new hair colour?” If she loves it, I wouldn’t say anything. If she expresses doubt, you could say something constructive like “a warmer, more neutral tone would really bring out your colouring more.” Couch it in terms of her bringing out her best features… it is very hard for someone to get offended or cross with you if you say it that way. If you always show concern for your friends and they know that you are kind and that there is no hidden agenda in the things that you say, they wil be very likely to take what you say in a positive way.
As far as friends draining you, I completely agree with duchessgummybunns . Friendships are social transactions, and there is no need to put more into them than you are getting out. It’s important to be conscious with your friendships, the same way you are about other things in your life (like work, what you eat, etc.), because they take energy out of you, especially if you are an introvert. It’s important that they put back as well. If a friendship is taking more out than it is putting back, then you need to scale that friendship back accordingly. The fact that you are feeling drained and wanting to get a bit of distance means that you probably have been putting more in than you’ve been getting out. You are probably kind and empathetic and a good listener, and some friends may have been taking advantage.
By the way, if you need to take a time out, you do not need to offer lengthy explanations or ask for permission or worry about what your friends will think, you can just do it. Your first priority is to yourself, and you need to take care of yourself. I take these time outs from time to time. As an introvert, I find them very rejuvenating. They’re also a great time to do a stocktake of your life and assess what’s working and what’s not.