You can read his full statement here.
This is a serious blow to the bill’s chances; it can lose only one more Republican and still pass. Rand Paul, Susan Collins, and Lisa Murkowski are all possible or likely no votes.
Update: It’s worth noting, by the way, that his rationale is rather bizarre. His key point — one he reiterated in his tweet announcing the decision — is this:
We should not be content to pass health care legislation on a party-line basis, as Democrats did when they rammed Obamacare through Congress in 2009. If we do so, our success could be as short-lived as theirs when the political winds shift, as they regularly do. The issue is too important, and too many lives are at risk, for us to leave the American people guessing from one election to the next whether and how they will acquire health insurance. A bill of this impact requires a bipartisan approach.
Fine, but if so, what was literally all of this about? It’s been clear since early this year, when Democrats rebuffed the original Cassidy-Collins bill, that no Democrat would support a repeal or deep reform of Obamacare. If McCain sincerely believes this, he should have been a firm no from the start, and shouldn’t have teased everyone by flirting with support for the various bills the Senate considered.