I had a very good friend once upon a time a few years ago, and was a recovering meth/ice addict. He relapsed, tryied to tell us that he was just bipolar (total bs), and finally admitted the problem (I think). He was such a manic and different person, that I would never let him in our house during his "manic" or more so high phase. We had a wee little baby, and Mr. Meth just plain out scared me. Before, he was as gentle as one could be, a very very chill, bad-ass, cowboy type. On ice, he was a psycho, and would stop taking his meds that kept him alive (aids). I have lost touch with him as he suddenly left town to go back to Oklahoma, but I can only assume that he's now no longer physically with us.
When it comes to drugs like heroin, alcohol, ice, coke, etc. these are all very addictive (only included coke due to some who become addicts, although most don't seem to have any addictive reaction to it (myself included about fifteen years ago - if it was there, I loved it, if it wasn't available, I never had a problem just stopping, unlike a few friends that we knew at the time, although there was an incident were I did almost od). Anyways, chemicals that cause such dramatic effects also have dramatic effects on personality. Currently, for the first time in about fifty years, research on LSD has started up again as a possible treatment for ptsd, and of course, only under therapeutic settings. As of now, it looks like a substance that could have overnight dramatic results, that is if it is worth the risk potential. I don't know, and I don't think that the researchers know either, but any drug can have severe consequences on the personality. Same thing is true with a person in withdrawal. There is reason why addiction is considered to be a disease, and a disease in which you can't trust what the addict says.
Was it the drug, or was it the person, well, it was the person who inflicted the drug on himself, so in that light it would be the boyfriends fault. If he had ptsd, boarderline personality disorder, or some other medical issue that he was self treating, then maybe not. Should he be charged? Yes - after all, this would be an opportunity for him to be forced to deal with the disease of addiction as well as the demon that caused it in the first place. Was it him that was violent, I don't think so, but do think that it was his fist and his problem that is to be blamed, and as long as he continues on the meth, he's dangerous to society as a whole.
This question really hits a very strange ground of ethics, and I hope that you understand what I'm trying to say. This ideology also applies to a heroin addict steeling, or a prostitute working the streets for crack. In many ways, your ex hitting you and getting charged very well could be the thing that saves his life... that is only if he's forced into treatment, and if he eventually accepts treatment. This is the only way the the justice system actually works, when it helps treat the disease that caused the person to commit the crime, vs. just doing hard time. Hard time only makes a person get worse, and to accept what has been done as being of the norm.
Good luck to you, and I hope that this has been somewhat helpful. Please remember that this is only an opinion, and just that. I'm not a doctor or anything other than a messed up guy with issues myself.